私はQStyle
を書きました。ここでは、QProgressBarをスリムなシングルライン、テキストなしに変更しています。だから高さも5pxに落とされます。ただし、ウィジェットの幅はレイアウトによって決まります。ウィジェットの高さを変更するには、私のスタイルのdrawControl
で何をすべきですか?ウィジェットのサイズをQStyleから変更する
答えて
私はQStyle
を実際に書いたことはありませんが、drawControl
の中で何かをリサイズすることになっていたら奇妙だと思います。私はこれについて間違っているかもしれません。ドキュメントの簡単な見直しは、subElementRectをオーバーライドし、現在の幅とあなたの好みの高さに基づいてrectを返すことを示唆しているようです。これはレイアウト活動によって呼び出され、drawControl
が呼び出されるまでにソートされると仮定します。
私は3つすべてのProgressBarに関連するサブ要素Case 'SE_ProgressBarGroove'、' SE_ProgressBarContents'、 'SE_ProgressBarLabel'を試しました。高さ5pxで同じ幅のrectを返しています。どちらがうまくいかない。変わらないそれはまだ同じです。 –
申し訳ありませんが、うまくいきませんでした。うまくいけば、より多くの提案が表示されます。 –
したがって、進行状況バーウィジェットで最大高さ5を設定すると機能しません。 –
ウィジェットの高さを固定する必要がありますか?または、描画された高さが5ピクセルを超えないようにするには?最初に、高さをに設定し、ポリッシュ機能でポリシーをサイズ変更します。 2番目の場合は、QStyleで図面を上書きして5ピクセルのみを使用します。描画を行う関数は一般的には矩形を取る。適切な関数を適切にオーバーライドすると、基本クラスの描画を変更された矩形で呼び出すことができます。残念ながら、私はQStyleの仕事をしてから何年も経っていますので、その機能が何であるか正確にはわかりません。
- 1. ユーザのサイズ変更PyQtウィジェット
- 2. Androidウィジェットのサイズ変更
- 3. Pyside:QScrollAreaウィジェットのサイズ変更
- 4. サイズ変更可能なウィジェット
- 5. Qtレイアウト、ウィジェットのサイズ変更後に最小サイズに変更
- 6. kivyスキャッタでウィジェットのサイズを変更
- 7. Qt guiの作成、ウィジェットのサイズ変更
- 8. ユーザ別gtkウィジェットのサイズ変更
- 9. 親コンテナのサイズ変更時にdojo dijit.Gridウィジェットのサイズを自動的に変更
- 10. サイズ変更後のGridsterウィジェットの新しいサイズを取得
- 11. QLabelの親ウィジェットのサイズ変更を防止する
- 12. djangoのサイズを変更する方法管理ページのManyToManyFieldウィジェット
- 13. サイズ変更可能な要素を持つサイズ変更可能なjQuery UIウィジェット
- 14. PyQt - 自動的にウィジェット/ピクチャのサイズを変更する
- 15. 子のサイズ変更イベントから親コントロールのサイズを変更
- 16. ウィンドウのサイズが変更されたときにTkinterウィジェットとキャンバスのサイズを変更しますか?
- 17. HTMLウィジェットを動的にサイズ変更する
- 18. iBooks HTMLウィジェットを動的にサイズ変更する
- 19. Tkinter Messageウィジェットのサイズ変更を止めるには?
- 20. レンダラプロセスからウィンドウをサイズ変更する
- 21. ScrollViewはウィジェットのサイズを変更しますandroid
- 22. Qt5とQML:ウィジェットのサイズ変更後にQQuickPaintedItemを更新するには?
- 23. KIVY:AsyncImageウィジェットはRecycleView内でサイズを変更しています
- 24. ウィジェットのデータソースをクライアント側コードから変更する
- 25. ウィジェットをカバーしないウィンドウのサイズ変更
- 26. Android 3.0をサポートしている間にサイズ変更可能なウィジェットですか?
- 27. Python:ウィンドウのサイズが変更されたときのウィジェットのサイズ変更(PLACEマネージャを使用)
- 28. ウィンドウのサイズを変更するiframeのサイズを変更する
- 29. サイズ変更中にwxpythonウィジェットのサイズ変更イベントが複数回呼び出される
- 30. ウィジェットの非表示/削除後のGtkダイアログのサイズ変更
レイアウトが何であっても、幅を5ピクセルに制限するsetMaximumWidth(5pixels)とsetMinimumWidth(5pixels)を呼び出す方がはるかに簡単だと思います。 –