#include <qpe/qpeapplication.h> // 使用するクラスを指定する #include "mainwindow.h" // 使用するプログラムを指定する int main(int argc, char *argv[]) { QPEApplication a(argc,argv); Mainwindow *mw = new Mainwindow(); a.showMainWidget(mw); return a.exec(); }
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <qmainwindow.h> // 使用するクラスを指定する #include <qapplication.h> #include <qcanvas.h> #include <qtextcodec.h> #include <qfont.h> #include <qpainter.h> #include <qpixmap.h> class Mainwindow : public QWidget{ Q_OBJECT public: Mainwindow(QWidget *parent = 0, const char *name = 0); protected: void paintEvent( QPaintEvent * ); private: QTextCodec *codec; // テキストコーデック QCanvas *qs; // 簡単にいえば絵を描くところ。絵画のキャンバスといっしょ。 QCanvasView *qcv; // QCanvas を表示させるもの。額みたいな。 }; #endif //MAINWINDOW_H
#include "mainwindow.h" // mainwindow.cpp のヘッダーファイル mainwindow.h を読み込み Mainwindow::Mainwindow(QWidget *parent, const char *name) : QWidget(parent, name) { // テキストコーデック「codec」を作成 // 以降、codec->toUnicode("ここに書いたことは日本語で表示できる") codec = QTextCodec::codecForName("ShiftJIS"); // ウィンドウのタイトルを設定 setCaption(codec->toUnicode("サンプル5「QCanvas を画面上に配置する」")); // 使用するフォントを設定 QFont f("lcfont",18); setFont(f); qs = new QCanvas(this); // キャンバスを作成 qs -> resize(800,800); // キャンバスのサイズを縦800、横800に設定 qcv = new QCanvasView(qs,this); // キャンバスの額を作成 qcv -> setGeometry(0, 0, 640, 480); // キャンバスの額の位置を設定 qcv -> setVScrollBarMode( QScrollView::AlwaysOff ); // V=vertical 垂直のスクロールバーを常にOFF qcv -> setHScrollBarMode( QScrollView::AlwaysOff ); // H=horizontal 水平のスクロールバーを常にOFF qs -> setBackgroundColor(QColor::QColor(200,0,0)); // キャンバスの背景を赤色で塗る update(); // キャンバスを更新(書き換え) } // QCanvas を使うときにはなくてはいけない?update()実行時にこの中身が実行され画面中に描画される void Mainwindow::paintEvent( QPaintEvent * ) { }
. ~/SLZaurus/bin/dev-arm-qpe.sh cd ~/SLZaurus/sample0005 progen -o sample0005.pro tmake -o Makefile sample0005.pro make |