前回までは、コードはいっさい書かなかったが、ここで始めてコードを
書くことにする。
今回は、LCD Numberではなく、画像処理アプリケーション作成のチュートリアル
でも行ったように、Line Editに値を表示させるようにする。
Line Editに値を表示するには、整数をそのまま渡す訳にはいかない。
整数を文字列に変換して、LineEditのスロットsetText(QString)に
渡さねばならない。
コードについての詳しい説明は、
画像処理アプリケーション作成のチュートリアル
を参照してほしい。
まず、LCD NumberをLine Editに置き換える。
一度レイアウトを壊し(Break Layout(Ctrl+B))、LCD Numberを削除し
LineEditに置き換える。
次に、スライダーのシグナルを新しいスロットに接続する。
コネクトを選択し、上の図のように、スライダーからダイアログ自体を
接続する。
開いたView and Edit ConnectionsダイアログのEdit Slotsボタンを押す。
上のようなスロットを定義する。
あとは、上のようにvalueChanged(int)シグナルと定義した
スロットを接続するだけである。
次にスロットの実装を行う。
Object Overviewからファイルを開く。
そこに、先ほど定義したsetInt(int)スロットがかかれているので
下のコードを追加する。
QString str; lineEdit1->setText(str.setNum(value, 10)); (lineEditの名前を変更した場合は、併せて変えること)
コンパイルは特に注意することがない。
画像処理アプリケーション作成のチュートリアルの
Hello,Qt!(動作確認とこのチュートリアルについて)
を参考にコンパイルしてほしい。
ただし、proファイルはQt Designerが作成しているので、
qmake -projectは実行しなくて良い。
MicrosoftやBorlandのRADツール(Visual Studio等)を使用したことが
ある人には、Qt Designerのコーディングに違和感を覚えるかもしれない。
それは、Visual Studio等のRADツールは、すべてのコードをユーザーが変更出来る様に
しているのに対して、
Qt Designerは必要な部分のみコーディングを行うようにしているからであろう。
このように、Qt Designerは必要な部分のみユーザーがコーディング出来るように
しているため、複雑になりがちなコーディングをよりシンプルに行える。