問題タブ [boxsizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
56 参照

python - wxPython -- BoxSizers が物を正しく配置しない

何が間違っているのかわかりません。Tkinter から wxPython にジャンプしたばかりで、BoxSizers を理解しようとしています。この質問を調べたいのですが、何を調べればよいかさえわかりません。このパネルはフレームのスペースを埋めており、その下にプログレスバーがあるテキスト行を表示することになっており、それはすべてパネルの下部 1/5 程度を占め、水平方向の中央に配置されることになっています (最終的にはその背後に背景画像を追加します)。しかし、何が起こるかというと、ウィンドウの左端に揃えられた、テキストだけが上から約 40% 下に表示されるだけです。コードは次のとおりです。

情報が必要な場合、configSet.width と height は親ウィンドウの幅と高さ (現在は 340 x 270) です。この場合、selectWindow は「configWindow」です。

0 投票する
1 に答える
727 参照

python - wxpython boxsizer addmany スペーサー

Add Many を使用しているときに、boxsizer の 2 つの項目の間にスペーサーを追加するにはどうすればよいですか? Spacer、AddSpacer などのキーワードを試しましたが、残念ながらうまくいきませんでした。

0 投票する
2 に答える
551 参照

python - wxformbuilder で垂直サイザーが子を下方向に拡張するのを防ぐ方法

Python 用の WX フォーム ビルダーでダッシュ ボードを設計しようとしています。垂直サイザーの子である2つの水平サイザーが互いに大きく離れないようにする方法を理解するのに苦労しています。以下は、私が言及していることを説明するスクリーンショットです。

ここに画像の説明を入力

青い矢印は、テキスト ボックス コントロールとラベルを最初のラベルに近づけたいことを表しています。

私の最初の本能は、wx.EXPAND などのフラグと関係があるということですが、サイザーを互いに近づける方法でそれらを変更することはできませんでした。サイザーを配置するたびに、ウィンドウ全体にすべてを自動的に収めようとするようなものです...これにより、フォーム上の正確な位置にアイテムを配置することが難しくなります。サイザーがフレーム ウィンドウ サイズ全体に拡大しないようにする方法について何か提案はありますか?

私の次の行動方針は、グリッドサイザーまたはフレックスグリッドサイザーを試して使用することでしたが、ウィジェットまたはオブジェクトを追加するグリッド内の正確な場所を選択できる直接コードでのみ使用しました。フォームビルダーでは、主にグリッドサイザーの特定のインデックスにオブジェクトを挿入できないため、使いにくいことがわかりました。それらを順番に挿入します。

1,1 -> 1,2 -> 1,3 -> 1,i -> 2,1 -> 2,2 -> 2,3 -> 2,i -> j,i

つまり、グリッド内の何かを変更する必要がある場合は...非常に困難です。オブジェクトを順番にではなく、グリッドに簡単に挿入できるようにするために欠けているものはありますか?

以下は、水平方向と垂直方向の両方のギャップ = 0 を指定した 5x5 グリッドサイザー (完全に埋められていない) の例の 1 つです。

ここに画像の説明を入力 ここに画像の説明を入力

ボタンを 1,4 のテキスト ボックスに置き換えることができることに加えて、垂直方向と水平方向のギャップに 0 を指定したにもかかわらず、水平方向のギャップが明らかにゼロではないことに気付きました。これにより、フォームの設計も非常に難しくなります。ボタン間に横方向の隙間があるのはなぜですか?

0 投票する
2 に答える
659 参照

python-2.7 - 子のサイズが変更された場合の wx.BoxSizer の再レイアウト

の子のサイズがwx.BoxSizer変更された場合、boxsizer は再ルーティングされません。

左ボタンをクリックするとサイズが変わりますが、レイアウトが壊れています。 子のサイズ変更後

ボタンのサイズ変更 (コメント行) で手動で再レイアウトすると、無限の再帰が発生します。

私の実際の使用例MyButtonMyButtonは、wx.Panel変更することはできず、トリガーできないイベントで変更されます。

0 投票する
1 に答える
149 参照

python - ListBox をフレームに揃える wxpython

ListBox を適切に配置する方法を見つけようとしています。ListBox の行を挿入するとすぐに、レイアウトがめちゃくちゃになります。

ここで出力ありとなし: リストボックスあり それなし

0 投票する
2 に答える
733 参照

python - wx Python BoxSizer でスペーシングを行う方法

wx.BoxSizer を使用して小さくて簡単なプログラムを作成しました。ソースコードは次のとおりです。

問題は、各ヘッダーの左側に水平スペースを追加すると、ヘッダーと sunken_border header1 および header2 の間に垂直スペースも追加されることです。副作用として垂直スペースを追加せずに、ヘッダーの前に水平スペースを追加する方法はありますか? ありがとう。

- -編集 - -

あなたのコメントに答えるために:ここにプログラムの写真があります: ここに画像の説明を入力 シンプルなBoxSizerプログラム...

緑色の「スペース」は必要なスペースですが、赤色の「スペース」は不要な副作用です。基本的に緑のスペースだけが必要ですが、赤のスペースは必要ありません。ヘッダーを2つのパネルと同じ高さにしたいです(真上にあるように...)。現在、それを機能させるために絶対配置を行う必要があります.BoxSizerまたは他のレイアウトマネージャーで機能させることができるかどうかを知りたかっただけです.ありがとう.

0 投票する
2 に答える
975 参照

python - BoxSizer でパネルを構築した後にパネルのサイズを変更する

パネルにコンテンツを含むパネルを作成する必要があり、パネルの作成後にサイズを変更する必要があります。パネルのサイズは子コンテンツによって異なります。子コンテンツを作成するときは、親パネルを指定する必要があります。鶏と卵の問題のように。したがって、パネルとそのコンテンツを作成し、コンテンツに基づいてパネルのサイズを変更する必要があります...

そこで、パネルが 50 x 50 で始まるモックアップ コード例を作成し、そのサイズで作成した後、代わりに 400 x 400 にしたいと思います。しかし、これをコンピューターで実行すると、 50 x 50 として参照してください。 SetSize((400, 400)) は効果がありません!

これを修正して、サイザーを適用した後に SetSize を有効にするにはどうすればよいですか? どんな助けでも大歓迎です...

0 投票する
1 に答える
157 参照

python - パネルのコンテンツを動的に縮小または拡大する方法は?

プログラム パネルを低解像度に合わせる際に問題があります。たとえば、解像度が 800 x 600 で、パネルがそれよりも大きい場合、特に画面の下部にあるボタンなど、すべてが途切れてしまいます。

そこで、例としてモックプログラムを作成しました。

では、私の質問は、「Hello, World!」をどのように作成するかということです。メインフレームが大きくなるとテキストが大きくなり、メインフレームが小さくなるとどうすれば同じようにできますか?

ありがとう。