- 2008/03/19 16:01
- 未分類
wxPythonのsizerがコントロールしづらい。
formLayoutならウィンドウのサイズをベースに大きさとか位置とか決めてくれるから
すごく楽なのになぁ、、なんて思いながらキーボードを叩いています。
概念自体は簡単なんだけど、慣れてないからどこをどうしていいやら、わかりません。
でもsizerの概念は、どうやらGTKだのQtだのでも同じらしく、
この先避けて通れないものっぽいので、ここらでいっちょ頑張って習得しときます。
参考リンク
何sizerを使ったらいいか、というところから悩む。。
頑張ります。
ところで、3/27にHoudiniユーザーミーティングがあるっぽいですよ。
ユーザーではないですが、ユーザーになりたい者として、参加したいと思います(ぇ。
Houdiniの思想は、ほんとにすばらしいと思うのですが、なぜ使われない。
布教頑張ってください>インディさん
———————————————————– 追記 ———————-
wxPython、まだまだ謎が多いですが、楽しいですよ。
そして相変わらずSizerでハマってます。
まず、PanelとSizerが、ややこしい。
僕の理解だと、PanelというのはHTMLで言う<span>タグのようなもの、
つまり、明示的に階層を組みたい時や、要素のまとまりを作りたい時なんかに使える。
が、似たようなことってSizerでも出来るような気がしてきた。
というか、出来る。
僕が考えているものくらいなら、ってことかもしれないけど。
っつーのは、Sizerでも階層は作れるし、リサイズを考えるならPanelとか使わないで
Sizerだけでもいいのかも???なんて思いますが、実際のところどうなんですか。
って書いてたらひらめいたーーっっっ!
PanelもSizerも階層構造を組むことは可能。
多分僕が考えていることぐらいならどっち使って階層組んでも問題ない。
そこでどう使い分けるか。
SizerはSizerだけに、リサイズの事だけ考えればOK。
Panelは、多分動的にGUIの内容を変更したい時なんかに便利なのかも。
Mayaで考えるとGroupとSets、みたいな。
いや、多分これは不適切な例えだけど、似たようなことをするもの、って意味で。
多分だから見た目的な階層はSizerで、Panelは構造的な階層で、ってことでいいんじゃまいか。
・・・ん、ひらめいたとか言いながら書いてたらまたわかんなくなってきた。
・・・・・orz
とりあえず、いろいろ試して手に馴染むように頑張ります。
んー・・・?
——————————————————— 追々記 ———————-
あーーーーっっっ
勘違いしてました。
思った以上に簡単なようです。
・・・うん、簡単です。
wxPythonは難しいらしい、と思ってしまった方、すみません。
簡単みたいです。
僕の理解力が足りないだけでした。
逝ってきます。
PanelとSizerは、組み合わせて真価を発揮するものなんです、多分。
ただ、さっき僕が勘違いしてた部分にも当てはまる気はするんですが、
なんとなく、最初はどうやってレイアウトしていいか迷うので、
ここは慣れとか経験とかなのかも、と思います。
無論、僕は今全開で迷ってます。。。
どうレイアウトするのが構造的に美しいのか、とか、まだよくイメージ出来んのです。
うーむ。。。
Comments:4
- hajime 2008/03/20
なれるまではwxGladeとか使って、イメージをつかむと良いよ!
- tai 2008/03/21
>hajimeさん
お、これはいいですね。
早速ちょっと使ってみます。
アザス!!- 匿名 2008/04/21
sizerはLayoutを決めるための階層構造。
panelは描画のため(語弊あり)の階層構造。
tcl/tkでも同じだね・・・だいたいpanelはwindowだがsizerはwindowじゃないし。
- tai 2008/04/21
>匿名の方
どなたかご存じないですが、わざわざありがとうございます。>sizerはLayoutを決めるための階層構造。
>panelは描画のため(語弊あり)の階層構造。
なるほど。
そう考えるとなんとなく納得がいきます。Mayaで言うと、groupとsetみたいな感じ(おそらく語弊あり)なイメージで使えばいいってことかなー。
Trackbacks:0
- Trackback URL for this entry
- http://blog.taikomatsu.com/2008/03/19/wxpython-sizer/trackback/
- Listed below are links to weblogs that reference
- [ wxPython ] sizer from memlog