VS+Qt リソース マネージャーとアイコン設定、QtCreator で設定されたメニュー バーとツールバーのプロセス レコード

エクスプローラーとアイコンの設定手順

  1. qrc は、プロジェクトが新しく作成されたときに表示されるいくつかのリソース ファイルのロードを担当します。

ここに画像の説明を挿入
2. qrcはアイコンリソースなどの読み込みを担当します パスに中国語が含まれるため自動で設定できない場合が多く、手動で追加する必要があります 追加順序は、 (1) リソース管理ファイル.qrcを開きます (2) )
現在のプロジェクトの qrc ファイルをコピーして
ここに画像の説明を挿入
追加します (qrc ファイルを持つ VS と同等ですが、パスに中国語が含まれる可能性があるため、リソース ファイルを自分で手動で追加する必要があります) ( 3) プロジェクト内の元のリソース ファイルを選択し
ここに画像の説明を挿入
ます(この手順は、qrc 編集欄に手動で入力することもできます。QtMainWindow.qrc と入力します) ここに画像の説明を挿入(4) プロジェクト フォルダーに新しいアイコン フォルダーを作成し、png や ico などのアイコンを事前に配置します; ( ここに画像の説明を挿入
5) そのフォルダーに追加ファイルを追加しますqrc ファイル。ここでアイコン フォルダーを追加します (前の手順がない場合、ここで [ファイルの追加] を追加できません)。
ここに画像の説明を挿入

(6) 事前に用意したプロジェクトフォルダーにアイコンのすべての画像ファイルを追加します。
ここに画像の説明を挿入
ここまでの
ここに画像の説明を挿入
追加が完了したら、ui を開き、ui 編集インターフェイスに入り、リソースマネージャーを開くと、アイコンが追加されていることがわかります。ファイルはすでに含まれています
ここに画像の説明を挿入

プロパティエディタ

ここに画像の説明を挿入
コントロールをドラッグした後、たとえばここでは Label コントロールをドラッグすると、プロパティ エディターからクラス間の継承関係が表示されます。最上位は QObject であり、すべてのコントロールの親クラスであり、メイン インターフェイスである Qt Basic も表示されます。クラス; QWidget は QLabel から継承; QFrame は QWidget から継承; QLabel は QFrame から継承; プロパティ エディターを通じて、さまざまなコントロール クラスのメソッドとプロパティを学習します。

QtCreatorのメニューバーとツールバーの設定

メニュー バーとツールバーは、デフォルトでは QMainWindow でのみ使用できるため、新しいプロジェクトを開始するときは、QMainWindow を継承することを選択します。
ここに画像の説明を挿入

メニュー バーの設定 (オブジェクト エディターで QMenuBar を選択)

ここに画像の説明を挿入
注: ここに入力した後、成功するには Enter キーを選択する必要があり、直接終了することはできません。
ここに画像の説明を挿入
二次メニューの下のインターフェイスに直接出力する場合、中国語入力はサポートされていません。自由に 2 つの数字を入力して、選択できます。それをアクションエディターで直接編集します。
ここに画像の説明を挿入
このようにして、編集内容を中国語で表示できます。
ここに画像の説明を挿入

ツールバー設定 (オブジェクトエディターで QToolBar を選択)

Qt 自体のデフォルトのツールバーの高さは非常に低いので、高さを手動で 30 に設定して、適切な高さにすることができます。

ここに画像の説明を挿入
ツールバーにオプションを追加するには、アクション エディターを使用する必要があります (アクション エディターが QtCreator に表示されない場合は、アクション エディターを表示します) アクション エディターで [新規] を選択すると、上のリソース マネージャーからアイコンを選択でき
ここに画像の説明を挿入
ます
ここに画像の説明を挿入

ここに画像の説明を挿入
新しい QAction オブジェクトを作成した後、アクション エディターで新しく作成された QAction オブジェクトを確認できます。
アクション エディターをツールバーに直接ドラッグすると、ツールバーにアイコンが表示されます。
ここに画像の説明を挿入

メニューバー、ツールバーコード編集

メニュー バーとツールバーは QAction クラス オブジェクトであり、他のコントロールとは異なり、クリック信号はなく、信号がトリガーされます。

connect(ui.actionOpen, SIGNAL(triggered()), this, SLOT(actionOpenSlot()));

おすすめ

転載: blog.csdn.net/qq_43376782/article/details/129785342