問題タブ [qdockwidget]

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

c++ - Qtサブウィジェットの高さを等しくするには?

QDockWidget単一の 内にいくつかの s (フローティングではなく、閉じることのみ可能) がありQWidgetます。それぞれの中にいくつかのウィジェットがありますQDockWidget-それらの高さは等しくなければなりません。これらの内部ウィジェットは、コンテキスト メニューから非表示にすることができます。

内部ウィジェットの高さは同じにする必要があります。私はこのようにしました:

const 要素をそれぞれに追加するまで、すべて正常に機能しますQDockWidget。水平スクロールバーとラベルがいくつかあります...これで、内部ウィジェットのサイズが異なります。しかし、それらの高さを厳密に等しくする必要があります。

QLayoutウィジェットの階層の 1 つのレベルでウィジェットのサイズをレイアウトします。高さが等しいサブウィジェットを作成するにはどうすればよいですか?

3 つのサブウィジェットと 2 つのサブウィジェット

最初の写真

ストレッチ 3 と 2 を設定する最初の戦略:

ここに画像の説明を入力

しかし、スクロールバーを追加したとき:

ここに画像の説明を入力

私の 5 つのウィジェットの高さは 37,37,37,28,28 に等しい...そしてそれが問題です

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

qt - QDockWidgetに背景画像を追加できません

私の知る限り、ウィジェットの背景を画像にする方法は、qstylesheetを次のように変更することです。

QDockWidgetのメインウィジェットでない限り、これは機能しているようです。

これは私がしたことです:

  1. 新しいqtウィジェットプロジェクトを作成します
  2. オブジェクトQWidgetを作成します。ボタンを1つか2つ置いて、使用されていることを確認します。
  3. スタイルシートを手順2で作成したウィジェットに変更して、次のものを含めます。background-image: url(<your image here>);
  4. MainWindow uiファイルで、を追加しQDockWidget、そのメインウィジェットをQWidget手順2で作成したものにプロモートします。

プログラムを実行すると、QDockWidgetの背景がデフォルトのままであることがわかりますが、ウィジェットに追加したボタンまたはラベルは、選択した画像に背景を変更しています。

qss行をからbackground-imageに変更しbackground-color、画像ではなく色を選択すると、ウィジェットの色が変更されます。

QDockWidget背景画像(背景色だけでなく)を与えるための提案はありますか?

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

qt - QDodckWidgetのドッキングされたウィジェットの上にペイント/描画

QDockWidgetを継承するクラスがQtにあります。そして、そのクラスには別のウィジェットが含まれています。含まれているウィジェットの上に何かを描画するQDockWidget継承クラスで関数を定義する可能性はありますか?含まれているウィジェットから独立しているが、継承されたクラスにリンクされている絵画のように。

ありがとうございました

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

c++ - QDockWidgetを移動できません

QDockWidgetsに入れることを目的として、いくつかを含むウィジェットを作成したいと思いますQMainWindow。問題は、 (他の方法がわからない)を使用QDockWidgetsしてQWidgetクラスに追加すると、ドッキングとドッキング解除以外に何もできないことです。私はそれらを動かすことができません、私はそれらを別の場所に置くことができません。layout->addWidget(dockWidget);setLayout(layout)QDockWidgets

QMainWindowがないこの機能addWidgetsがあります。QWidgetすべてを使用することは完璧に機能しますが、オブジェクト(いくつかを含む)をQMainWindowに追加した場合も同じように機能させたいと思います。QWidgetQDockWidgetsQMainWindow

QWidgetそれらを完全にサポートQDockWidgetsし、最大限の可能性(移動、拡大縮小、ドッキング、位置の変更)を使用する可能性はありますか?

ありがとう

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

qt - QDockWidget ::titleStyleSheetの設定

私の最初の問題は、QDockWidgetのタイトルを太字にすることでした。私はこれを試しましたが、うまくいきました:

しかし、次のコードが機能しない理由を理解できません。

より複雑なスタイルシートを使用しても、以下を除いてすべてのパラメーターが有効ですfont: bold

QDockWidget :: titleフォントの問題は何ですか?

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

c++ - QDockWidget ドッキングで QMainWindow のサイズを自動的に変更する

QMainWindowに合わせて拡張するQWidgetがあります。QDockWidget をドッキングできますが、それは現在の QMainWindow のサイズに収まる場合のみです。

QMainWindow が小さすぎる場合でも QDockWidget をドロップできるようにしたいと思います。その場合、ウィジェットを収容できるようにサイズを変更します。

出来ますか?

コメントから編集:

ウィジェットをメイン ウィンドウにドラッグすると、ウィンドウが小さすぎてウィジェットが収まらず、ドッキングしません。そのため、 aがドッキングまたはドッキング解除されたときに発行されるQDockWidget信号を使用できません。信号。topLevelChanged(bool)QDickWidget

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

c++ - Qt-QMainWindowが小さすぎる場合でもドッキングを許可します

私の前の質問は答えられなかったので、言い換えさせてください:

ウィジェットやウィンドウのサイズに関係なく、QMainWindowドッキングを受け入れることはできますか?QDockWidget

現在、ウィンドウが小さすぎて最小サイズに収まらない場合、QDockWidgetドッキングされません。メインウィンドウがウィジェットに合うように大きくなると理想的です。

前もって感謝します!

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

c++ - QMainWindowであまりにも多くのドックウィジェットとの醜い重複を回避するにはどうすればよいですか?

このアプリケーションでは、実行時にロードされるプラグインによって追加されるドックウィジェットがいくつかあるため、ドックウィジェットの数は可変です。すべてのドックウィジェットが必ずしも同時に表示される必要はありません。これは、ユーザーが作業しているものとアクティブなプラグインに大きく依存します。

ただし、プログラムで追加されたドックウィジェットが多すぎるとaddDockWidget(...)、互いに重なり始めます(タブではなく、別の領域にペイントされている1つのコンテンツの内容で、明らかに壊れているように見えます)。

重複するドックウィジェット

ユーザーはドックウィジェットをまだスペースが残っているドックエリアに移動できますが、レイアウト/メインウィンドウは「混雑した」ドックエリアへの再追加を正常に防止します(アブされない)。

QMainWindow::ForceTabbedDocksタブ付きドックを使用して、ユーザーが必要なドックウィジェットを配置できるようにしますが、同時に表示されるドックウィジェットの数が制限されすぎるため(ドック領域ごとに1つ)、有効にしたくありません。

これを防ぐにはどうすればよいですか、またはドックウィジェットの追加方法をより適切に制御するにはどうすればよいですか?

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

c++ - Qt4:QDockedWidgetのサブクラスからQtDesignerで作成されたウィジェットにアクセスする

私の質問はタイトルから明らかだと思いますが、そうではないかもしれません=)
詳細に説明しましょう... QDockWidgetを作成し、デザイナーを使用してサブクラスに変換しました(つまり、昇格しました)。 。

では、配置したウィジェットに適切にアクセスするにはどうすればよいですか?アイデアは、すべてのサブクラスのオブジェクトがサブクラス内で処理されるということです。問題は(ご存知かもしれませんが)それです

これを返します:

そして、それらのどれも私が手に入れたいQLabelsと他のtishを含んでいません)。ただし、ui_mainwindow.hを見ると、この問題に光が当てられています。ウィジェットは、親を持たないQWidgetであるdockWidgetContents_3にあります。したがって、唯一の方法はMainWinsowのui-> ...を介してアクセスすることであるように思われます。そして、uiを公開することを考えると、私は「非常に悲しいパンダ」になります...

前もって感謝します!

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

python - PyQt4: DockWidget のサイズを変更すると、スクロールバーがスクロール領域に表示されない

DockWidget を備えた MainWindow と、その中に scrollArea ウィジェットを備えた tabWidget を持つ Python テスト プログラム (Test_InfoPanel.py) を作成しました。ただし、MainWindow のサイズを変更すると、垂直スクロールバーが自動表示されません。

同様に、dockWidget をドッキング解除してサイズを変更すると、垂直スクロールバーが自動表示されません。

助けてください!

テスト プログラム (Test_InfoPanel.py):


生成された *.ui スクリプト (InfoPanel_UI.py):


PS:最初に mainWindow を Dialog として作成しましたが、ドッキングを解除して再ドッキングした後、dockWidget が適切にドッキングされないことに気付きました。なんとなくズレがあります。mainWindow が QtGui.QDialog ではなく QtGui.QMainWindow である場合、これは問題ではないようです。