問題タブ [qlayout]

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 に答える
90 参照

qt - QtDesginer で個々のウィジェットを編集することは可能ですか?

ここにあるものと非常によく似た、QGLWidget からの派生クラスを含む外部ライブラリを取得しました。そのライブラリにはクラスがあります:

これにより、Qt のネイティブ QGLWidget が拡張され、パーソナライズされます。しかし、それは私が書いたものではなく、*.dll 経由で入手したものです。そのため、コード内でそのウィジェットを次のようなレイアウトに手動でバインドします。

ちなみに、統合された QtDesigner を使用して MainWindowWidget を設計しましたが、これは非常に快適です。現在 MainWindow を再設計しているため、QtDesigner でも myPictureGLWidget を処理したいと考えています。

それを行う方法はありますか?事前にt​​hnx!

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

qt - Qt 奇数レイアウト配置

私は次の配置を得ました(元はこちら):

test_image

5 つの型破りなサイズのボタン (w:400、h:300) が次のように配置されています。他の 4 つのボタンの交差。ウィンドウを展開、最大化、最小化するときにこの配置を維持するために使用できるレイアウト (グリッドレイアウト、フォーム レイアウトなど) があるかどうかを知りたいです。助けてくれてありがとう。

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

qt - QLayout から QWidgets を削除しますか?

QVBoxLayout実行時に作成したQWidgetオブジェクトを動的に入力します。実行時にそれらも削除したいのですが、どうすればよいですか?

ウィジェットを 1 つずつ削除できます。

どういうわけかレイアウトを繰り返すことはできますか?

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

qt - 不明確な動作 maximumSize と sizePolicy

3つのボタンを持つシンプルなウィンドウがあります。ウィンドウのプロパティ sizePolicy は Fixed、Fixed です。ジオメトリは 266、115 です。最小サイズは 266、115 です。最大サイズは 16777215、16777215 です。

私はそのように考えています:「sizePolicy が固定されている場合、ウィンドウを任意のサイズに拡大することはできません。ジオメトリのようにする必要があります。sizePolicy が Expanding または Preferred の場合、ウィンドウを最小サイズから最大サイズに拡大できます」

実際には、ウィンドウの拡大を許可しないことがわかった唯一の方法は、最大サイズ = 最小サイズに設定されています。

sizePolicy が不明確な方法で機能するのはなぜですか? それは機能しますか?私が間違っているのは何ですか?

私の英語はあまり上手ではないので、寛容になってください。

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

qt - Qtでウィンドウのレイアウトを手動で設定する適切な方法

コアの数に応じて変更する QMainWindow レイアウトが必要です。したがって、手動で設定します(デザインモードを使用しません)。

私の質問は、このレイアウトが作成された後、そこに含まれるウィジェットを参照するにはどうすればよいですか?

から QLayoutItem を取得できますthis->centralWidget()。または、すべてのウィジェットを MainWindow クラスのレイアウト メンバーに作成し、それらに直接アクセスすることもできます。

しかし、私はどちらも正しい方法ではないと感じています。

ウィジェットを ui に渡す方法はありますか? 呼び出してアクセスできるように ui->threadingTable

0 投票する
0 に答える
114 参照

c++ - 子の1つがCSSを使用してサイズ変更された後、レイアウトの再計算を強制する方法は?

2 つのウィジェット (実際には垂直レイアウト自体) を含むダイアログ ボックスがあり、中央にスペーサーがあり、水平レイアウトとして配置されています (レイアウトの「線」は赤です)。

ここに画像の説明を入力

また、実行時に読み込まれて解析されるグローバル スタイルシートもあります。問題は、このスタイルシートが左側のレイアウトの一部のウィジェットの高さを変更することですが、メインのレイアウトではそれが考慮されていないようで、アプリケーションの実行中は次のようになります。

ここに画像の説明を入力

私の理解では、左側のレイアウトにウィジェットを収容するために必要な余分なスペースを補うためにメイン レイアウトのサイズが変更されますが、右側のレイアウトはその親の余分なスペースに合わせてサイズ変更されず、見苦しく見えます。すべてのレイアウトでデフォルトのサイズ制限を使用しています。

適切なレイアウトのサイズを強制的に変更するにはどうすればよいですか?

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

qt5 - 最小限のスペースが必要な QLayout

QVBoxLayout があり、実行時に他の QWidget を動的に追加します。

これらの追加されたウィジェットの間には多くの無駄なスペースがあります: 動的 QWidegt 間に無駄なスペースがある

アプリケーションを実行すると、マウスで高さを圧縮できます。

境界線をマウスでドラッグしてスペースを圧縮

各 widgetList_i ウィジェットの高さを setMaximumheigth() で制限するのは良い方法ですが、最初と最後にスペースが無駄になります。 最大高さ

a だけを追加するui->vertivalLayout->addStretch(1);と、最後に空白が生じます。そのレイアウトの始まりは素晴らしいです: ここに画像の説明を入力

主な質問: 追加されたウィジェットに関するレイアウトの高さを最小限に設定する機能はありませんか?
副次的な質問: そのウィジェットに垂直スクロールバーを追加するにはどうすればよいですか?

編集: - spaceritem を追加すると、さらに悪化します:SpaceItem私の問題は解決しません

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

qt - ウィジェットのセットが変更されたときに、現在のウィジェットだけを保持するように QWidget のサイズを変更します

QWidgetレイアウトが垂直である があるとします。このレイアウトには、ボタン (bt1) と別のレイアウト ( hLayout) があります。

このアプリは、bt1 をクリックして からボタンを追加/削除するように動作しますhLayout

ボタンが初めて追加されると、新しいボタンを保持するためにウィンドウが大きくなります (幅が大きくなります)。次にクリックすると、ボタンが非表示になります。ただし、ボタンを非表示にしても、ウィンドウは縮小されません。ボタンを追加する前と同じサイズにしたいです。

ボタンが削除されたときにウィンドウを適切に縮小する方法は何ですか? または、より一般的には、ウィンドウを十分なサイズにするためのアプローチは何ですか?