問題タブ [qgridlayout]

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 投票する
1 に答える
3517 参照

python - 動的 QGridLayout の更新 - Python PyQt

最近Pythonの勉強を始めて、今はPyQt Librariesを使ってGUI付きのソフトウェアを作っています。

これが私の問題です:私はスクロールエリアを作成し、このスクロールエリアにQGridLayoutを含むウィジェットを配置しました。

次に、10 個の QLabel を追加します (これはもちろん単なる例です。この例では、垂直レイアウトと同様に QGridLayout を使用しています):

次に、関数「function_name」を呼び出すボタンを作成します。この関数が行を削除するようにしたいと思います。これまでのところ、これは私が書いたものです。

最初の行を削除し、グリッドレイアウトの x 行ごとに行 x-1 になりますが、「行 1」というテキストは削除されないため、同じ行に「行 0」と「行 1」が表示されます。

誰でも私を助けることができますか?

事前にどうもありがとう、ダビデ

0 投票する
3 に答える
15615 参照

c++ - Qt QGridLayoutは、アイテムを自動的に中央に配置(移動)します。

フォームにQHBoxLayout3つのレイアウトが追加されています。2つ目は私の質問に関する項目です。

QVBoxLayoutメインレイアウトの2番目のペイン( )にがありQHBoxLayoutます。これに。QVBoxLayoutQScrollArea追加されていaddWidgetます。

これは、呼び出された「scrollContents」QScrollAreaの親であり、これには。が含まれます。QWidgetQGridLayout

QGridLayoutこれに、高さが固定されたカスタム作成のウィジェットを追加しています。今のところこれを考えることができ100pxます。

QGridLayout全高がフォーム自体よりも低いアイテムがある場合は、これらのウィジェットを同じ量のスペースで垂直方向に中央揃えにします。

ウィジェットが1つしかない場合は、真ん中に表示されます。しかし、私はそれらを上から下にリストしてほしい。

例:[###は、が付いている領域QScrollAreaQWidget表します QGridLayout

基本的に:9つの「行」のスペースがある場合、1つのアイテムを追加すると、5番目の位置の中央に表示されます。9個以上ある場合は、表示されます。8個以下の場合は、それらの間のスペースが拡張され、すべてが中央に配置されます。

どうすればこれを解決できますか?

ありがとうございました。

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

qt - QGridLayout の複数のセルに含まれるウィジェットが中央に配置されていません

質問はそれをすべて言います。

私は5 x 3のグリッドを持っています。

このように見えます

列全体または行全体に何もないスペースでは、minimumRowHeight とそれらのすべての設定が機能します。右?

良い。ボタン A とボタン B (およびその他のボタン) は、それらが共有する 3 つのセルの中央に配置されることはありません。一度もない。レイアウトのパラメータに何を書いてもかまいません。

コードは、最終的に垂直レイアウトを使用して取得したため、コードを消去しました。内部では、2 つの水平レイアウトが使用されています。それらはそのように中心になります。しかし、私はそれらをより良く配置したいと思います。

機能しないのは、次を使用してウィジェットを追加する場合です。

addWidget( ウィジェット, 0,0 , 2,0 , Qt::AlignHCenter ); AlignCenter でさえ機能しません。

中央揃えまたは右揃えにする方法は?

ありがとう!

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

qt - QT で複数のグリッドに多くのウィジェットを追加するにはどうすればよいですか

製品カテゴリ タイプ、サブカテゴリ、picUrl、および価格で構成される MySQl データベースにテーブルがあります。各レコードを複数の QGridLayout ウィジェットに追加して、Ui を作成し、さまざまなカテゴリとサブカテゴリの QScrollAreas に割り当てたいと思います。

100 個のアイテムまたは少数のアイテムに対しては正常に動作しますが、LIMIT アイテムを LIMIT 1000 または 100 をはるかに超える値に設定すると、QThread::start: Failed to create thread() Invalid parameter passed to C が生成され始めます。ランタイム機能。エラー。QThread::start: スレッドの作成に失敗しました (アクセスコードが無効です。)

そして、私は時々たくさんの QPixmap::scaled: Pixmap is a null pixmap を取得しますが、私のスロットは QNetworkReply が受信された後に画像を更新するので、独自の時間にロードされます。

これは、クラスの作成が多すぎるためですか? その場合、作成を遅くしてグリッドレイアウトに追加する方法はありますか? または、再設計して 100 項目のページを作成するか、すべてを含む TabWidget の代わりに 1 つのカテゴリのみのページを表示する必要がありますか? ...

Gridlayouts に任意の数のウィジェットを挿入したいと思っています。

これが私が使用しているコードです。

addItem 関数

グリッドに追加する関数

そして私のcheckNewArrivalitemクラスヘッダー

および checkNewArrivalItem クラス cpp

0 投票する
4 に答える
42198 参照

qt - Qtレイアウト、ウィジェットサイズの変更後に最小サイズにサイズ変更

基本的にQGridLayout、いくつかのウィジェットが含まれています。重要なのは、画面に画像を描画するために使用する2つのラベルです。ユーザーが必要に応じて、受信画像の解像度を変更して、ラベルのサイズを強制的に変更することができます。

ラベルの初期サイズがであると仮定しましょう320x240。ユーザーがVideoModeをに変更する640x480と、ラベルとGUI全体のサイズが完全に変更されます。ただし、ユーザーがに戻ると320x240、ラベルは縮小しますが、レイアウト/ウィンドウは縮小しません。

私はsizePoliciesand sizeHints、andresize(0,0)で遊んだことがありますが、何もうまくいきませんでした。誰かがこれを手伝ってくれませんか?

ここに問題を明確にするためのいくつかのスクリーンショットがあります:

ここでは、すべてが大丈夫です それでも、640x480は完全にサイズ変更されます しかし、ここでは、レイアウトが大きすぎます。

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

python - PyQt QGridLayoutのサイズが変更されないのはなぜですか?

PyQtを使って簡単な電卓を書いて​​います。私のコードでは、QGridLayout を使用してウィジェットを複合しています。しかし問題がある。ウィジェットのサイズを変更する方法が見つかりません。QWidget.resize と insertStreach を使用しようとしましたが、必要なように機能しません。QWidget.resize を代用できる関数はどれですか?

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

c++ - QGridLayoutへのウィジェットの挿入に関する問題

次のレイアウトのウィジェットを作成しようとしました。

ここに画像の説明を入力してください

私はいくつかのアプローチを試しましたが、最初のアプローチでは、QVBoxLayoutを使用して、QGridLayoutを使用するさまざまなウィジェットを追加しました(したがって、水平方向のサイズを希望どおりに変更します)。

2番目のアプローチはmydialogのレイアウトとしてQGridWidgetを使用することであり、私の3番目のアプローチはmydialogの同じQGridWidgetにそれらすべてのアイテムを追加することでした。

これらの結果はすべて同じで、私にとっては奇妙な動作になります。これらのダイアログを作成してshow()を呼び出すと、次のいずれかが発生する可能性があります。

  1. すべてのアイテムは私が望む方法で描かれました。
  2. 左側のチェックボックスが表示されましたが、右側のボタンはチェックボックスの説明をカバーしていました
  3. 左側のチェックボックスは正しかったのですが、ボタンが見つかりませんでした。
  4. ボタンがすべてのスペースを占め、チェックボックスがまったく表示されませんでした。

誰かが私にヒント、私が間違ったことを教えてくれますか、または私が画像に描いたレイアウトを作成する方法を教えてもらえますか?

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

c++ - ウィジェットを QFileDialog に追加する

のレイアウトにウィジェット ( QTableWidget)を追加する必要があります。QFileDialog私はそれがQGridLayoutサイズであると知ってい(3,4)ます。テーブルは 3 行目にあり、すべての列にまたがる必要があります。

このコードでは、lineEdit と保存/開く pushButton を含む元の 3 行目が消えます。QGridLayout元のウィジェットがレイアウトに残るように、既存のウィジェットの間にウィジェットを追加するにはどうすればよいですか。

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

qt - Qtのqgridレイアウトでウィジェットの座標を取得する方法

qpushbuttons でいっぱいのグリッド レイアウトで数独ゲームを設計しようとしています。qpushbutton をクリックするとトリガーされる数字を挿入する瞬間に、他の「セルに応じて有効な動きかどうかを確認する必要があります。 "。私の問題は、qgridlayout でクリックされた qpushbutton の行と列が必要ですが、その方法を見つけることができなかったことです。qgridlayout でクリックされた qpushbutton の座標を取得する方法はありますか?