Hatena::ブログ(Diary)

はけの徒然日記 このページをアンテナに追加 RSSフィード

2005 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 04 | 05 | 08 | 09 | 10 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 |
2011 | 01 | 02 | 03 | 04 | 11 | 12 |
2012 | 02 | 03 | 05 |
2014 | 02 | 03 | 04 | 05 | 12 |
2015 | 05 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 04 | 05 | 08 | 09 | 11 | 12 |
2017 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 |

2006-09-06(Wed)

hake2006-09-06

ウィジェットの配置 - QGridLayout

Ruby/Qte勉強 その39

昨日のBigDecimalを利用して簡易電卓の作成、一応表示桁数は20桁としてみる。

QGridLayoutの使用方法は、あさあさみっくすさんの公開メモを参考にさせていただきました。

ウィジェット配置用に6×4のグリッドを作成、その内LCD表示用に0行目全体を使用

# 部品配置用グリッド 6x4
@v = QGridLayout.new(@f, 6, 4, 10, 10, 'grid')

# LCD表示部分
@lcd = QLCDNumber.new(MAX_DIGIT, @f)

# グリッド1行目(0,0)-(0,3)に配置
@v.addMultiCellWidget(@lcd, 0,0,0,3)

下のグリッドにはそれぞれに入力用のキーとなるQPushButtonを配置していく。QGridLayoutは複数のグリッドにまたがってウィジェットを置く方法さえ知っていれば、画面のデザインが簡単にできるので非常に使いやすいクラスだと思います。

最初キーの行数は少ない状態で実行したところQLCDNumberが縦方向に拡大されて表示してしまったので、.setRowStretchで0行目の優先度を下げていたのだけれども、キーの行数を増やしたところバランス良く表示されたのでコメントアウト

使用しているウィジェットは全てQFrameの上に置くようになっている、これを直接selfの上に置くようにするとエラーになった。何故QFrameが必要とされるのかは不明です。


ソースは別館のRuby/Qte勉強部屋にて

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/hake/20060906/p1
リンク元