問題タブ [uic]

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

qt - setupUi または uic 出力を使用して、親ウィジェットなしで独立したレイアウトを作成する方法は?

ファイルから uic によって生成された出力は、.ui常にレイアウトと子ウィジェットを既存のウィジェットにインストールします。これは、レイアウト/子を に直接追加する場合に最適ですwidget

残念ながら、介在するウィジェットが不要な場合もあります。まず、ウィジェットのレイアウトにはゼロ以外のマージンがあるためUi::Form、レイアウトにコンテンツを挿入する場合は、マージンをリセットする必要があります。

さらに、この場合、介在するウィジェットは完全に不要です。setupUiトップレベルのウィジェットを必要としなかったとします (Qt 5.7 以降、nullptr を渡すとクラッシュします)。次のように使用できます。

調べuicたところ、トップレベルのウィジェットなしでコードを発行することはサポートされていません。必要なパッチがごくわずかであることは事実です。

それでも、Qt にパッチを適用せずにnullptr-acceptingの効果を実装する方法はありますsetupUiか?

誰かがこれをでっち上げの問題だと思わないように: この質問は、YUView のこのコードによって部分的に促されました。そこでは、parentWidget渡された にsetupUiすでにレイアウトがあり、その目的は、完了後にフォームのレイアウトを別のレイアウトに追加することsetupUiです。QWidget::setLayoutの内部から呼び出されてsetupUi、新しいレイアウトの設定を拒否し、警告を発し、それにもかかわらず、物事はたまたま機能します。このコードは、Qt コードが目的の結果につながる正しい方法でブレークすることに依存しているため、脆弱です。

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

c++ - QT 作成者 UI 生成クラスを他のクラスに継承させる方法は?

QT Creator を使用して ui ファイル (例: mainwindow.ui) を含むプロジェクトをビルドすると、その .ui ファイルのクラス定義 (例: ui_mainwindow.h) を含む .h ファイルが自動的に生成されることがわかっています。.h で生成されるクラスは次のようになります。

qt .ui ファイル生成クラス

私の質問は、生成されたクラスを次のようにする方法です。

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

qt4 - Qt5: テキスト ID ベースの翻訳。カスタム パラメータを uic に追加する

プロジェクトに Qt 5.9 を使用しており、ID ベースの翻訳を使用する必要があります。私の問題は、uic 実行可能ファイルのパラメーターを変更できないことです。qmake 変数 "QMAKE_UIC" は Qt 5 で削除されました。

.ui ファイルで ID ベースの変換を使用できるように、パラメーター「-tr qtTrId」を uic コマンドに追加する方法を知っている人はいますか? または、ID ベースの変換を使用するように qmake に指示する別の方法はありますか?

君たちありがとう