問題タブ [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.
c++ - 複数の *.ui ファイルによる複数の Ui_Dialog 定義?
私は3.5インチのLCDスクリーンを備えたRaspberryPiに取り組んでいます。タイトル バーのないキオスク モードで動作する Qt 5 ベースのアプリケーションがあります。アプリは 320x480 の画面全体を使用します。ユーザーがメイン ダイアログ ウィンドウのボタンをクリックしたときに表示される 2 つ目のダイアログを追加しようとしています。
各ダイアログは、Qt Designer を使用して設計されています。各ダイアログには*.ui
、ダイアログ サイズを設定し、ボタンを追加するファイルがあります。ファイルは*.ui
ヘッダーとソース ファイルに uic または moc されます。
問題は、*.ui ファイルの変換方法にあるようです。
と:
問題はわかっていますが、Qt ツールで修正する方法がわかりません。ツールは、ファイルごとに一意の名前空間または一意のクラス名を使用する必要があり*.ui
ます。
問題を解決するにはどうすればよいですか?
MCVE はNoloader |で入手できます。qt-ui-dialog GitHub。MCVE は次のように複製されます。
問題は次の方法で再現できます。
qt - Qt6 移行 - UIC 生成コードがコンパイルに失敗する (接続スロット) - 更新
プロジェクトを Qt5 から Qt6 に移植しようとしています。私の問題は、UIC によって生成されたコードが次のようになることです。
MSVC2019 のコンパイルは次のエラーで失敗します。
ターゲットが method isQWidget::selectHome
であることを確認してください。したがって、IMHO MSVC は正しいです。QWidget には method がありませんselectHome
。ただし、ターゲットはサブクラス メソッドである必要がありますtoQPSQLSettingUI::selectHome
完全なソースはこちらです。最初は Qt2 用に作成され、Qt3=>Qt4=>Q5 に移行されました。
uic - PySide 6 : ui を py に変換するときに、リソースの目的のインポート パスを取得できません
ui ファイルで定義され、ui サブディレクトリに保存されているメイン ウィンドウがあります。
このメイン ウィンドウは、いくつかのアイコンを使用しています。
これらのアイコンは、リソース サブディレクトリに保存されます。resources.qrc と resources.py がルート ディレクトリに配置されている場合、エラーは発生せず、アイコンも適切に表示されます。
resources サブディレクトリに resources.qrc と resources.py を入れることができました。メイン ウィンドウの ui ファイルをコンパイルすると、インポート resources_rc (または、--from-imports オプションを使用する場合は from . import resources_rc ) が取得されます。
import ステートメントを機能させるには、import resources.resources_rcが必要です。明らかに、手動で変更したくないので、uic.exe を使用して適切なインポート ステートメントを生成しようとしています。
ここに resources.qrc の内容があります
main_window.ui には、次のタグがあります。