2012-02-16 10 views
0

ウィンドウの周りやwxWidgets/wxPythonのコンポーネント間にスペースを追加するために使用できるものはありますか?私は、Java SwingのEmptyBorderやInsetsでできることと同様に、コンポーネントがウィンドウの枠線や互いに対して踏みつぶされないようにしたいと考えています。 (いくつかのサイザーで水平/垂直ギャップを設定できますが、より柔軟なものを望みます)wxWidgetsのスペース/空の境界

+0

おっと、私はAPIドキュメント(またはチュートリアル)を見ている必要がありますね。別のスペーサーを使わなくても、オブジェクトの両側に異なる間隔を指定する方法があったらいいですね。 – ecraig12345

+0

この質問を後で見る人の便宜のため、[Sizer.Addのドキュメント](http://wxpython.org/docs/api/wx.Sizer-class.html#Add)を参照してください。 – ecraig12345

答えて

1

SizerのAddメソッドのborderパラメータを参照してください。 flagパラメータを使用して、wx.ALL、wx.RIGHT、wx.LEFT、wx.TOPなどの境界線をどこに配置するかを指定できます。

これは、ウィジェットの周りにスペースを配置するために使用できます。ウィジェット。場合によっては、サイザーのAddSpacerを使用してスペースを追加することもできます。それは何

mySizer.Add((20, 100)) 

がy軸上の2つのウィジェット間の100個のピクセルを入れている:それとも、ただ、このような何かを行うことができます。あなたはおそらくそれをあなたが望むようにするために少し遊ばなければならないでしょう。

も参照してくださいhttp://wiki.wxpython.org/GridSizerTutorialまたはhttp://zetcode.com/wxpython/layout/

少しより密接
1

wxWidgetsによって提供されるサイザーは非常に柔軟です。あなたは彼らができるすべてのものを探検したと思いますか?彼らが扱うことができない必要があるかもしれないものを想像するのは難しいです。これまでに試したコードを正確に記述して投稿してください。ここで

は一例です。ここで

sizer->Add(new wxButton(this, -1, "Button with 20 pixel border all round"), 
     0, wxALL, 20); 

は、より多くのサイザーオプションのデモです。 http://neume.sourceforge.net/sizerdemo/

本当に必要な機能を実現するためにサイザーを使用できない場合は、場所をウィジェットコンストラクタに渡すことで、必要な場所に各ウィジェットを明示的に配置できます。

wxPoint button_position(50,50); // position button 50 pixel down and to right of top left 
new wxButton(this, -1, "Button", button_position) 
関連する問題