2011-01-12 4 views
4

qtデザイナを使用して見栄えの良いツールバーを作成し、いくつかのアクションを設定しました。
Qtデザイナーからアクションをスロットに視覚的に接続するには、編集>信号とスロットをクリックしてください。この私はQActionシグナルを見つけることができなかったので、は働いていません。qtデザイナを使用してQActionsをSLOTSに接続する方法

質問。

QAction SIGNAL(triggered())をQTデザイナ内のスロットに接続する方法はありますか? 助けてください。
PS: 私は現在、コードを介して接続することを余儀なくされています:

QObject::connect(myAction, SIGNAL(triggered()),this, SLOT(myActionWasTriggered())) 

しかしiaが怠け者だと私はQtのデザイナーを使用して接続したいです。

答えて

4

は、「アクションエディタ」パネルを使用して、デザイナーに

+0

thあなたはあなたのソースファイルでAuto Connectionをhttp://doc.trolltech.com/4.6.2/designer-using-a-ui-file.html#automatic-connections ...を使用することができます – Azd325

+0

ツールバーでこれを試してみると私はツールバーの信号だけを見ていますが、ツールバー内のQActionsをいくつかのスロットに接続しようとしています。私が望むのは、qtデザイナーの中でいくつかのアクションとそのシグナルを見ることです。 –

3

「シグナル/スロットエディタ」ドッキングパネル(表示/シグナル/スロットエディタで切り替え)があります。 アクションをそこに接続することができます。 「信号/スロットの変更」フォームのコンテキストメニューからカスタムスロットを追加する必要がある場合もあります。

自分で仕事を節約するには、自動接続機能(QMetaObject::connectSlotsByNameを参照)を使用してください。基本的には、特定パターンの名前のスロットはすべてon_objectName_signalNameに自動接続されます。

2

をautconnectする方法...ドキュメントDesigner Connection Modeにここを見て。あなたは "信号&スロットエディタ"の近くにそれを見つけることができます。

0

メニューを持っている場合は、あなたが持っていると仮定し、あなたの行動は、メニューに応じて、オブジェクトの名前してください:

File Edit View Tools Help 

あなたは5メニューバーを持って、

をですから、action_xのセットを持っているだろう、Xあなたのメニューに合わせてxの名前をつけてください。

よりexplaintion:

File = 1 
Edit = 2 
View = 3 
Tools = 4 
Help = 5 

と仮定:

File---> Open ..Close 
Edit---> find...replace 
View---> ZoomIn ... ZoomOut 
Tools--->calender... prefrences 
help---> help... about 

あなたは持っている5X2 = 10、あなたは10アクションは、管理してください持っているような:の種類以上

action_11 == File>Open 
action_12 == File>close 
action_21 == Edit>find 
and so on.. 

あなたのコーディングを容易にします.....

関連する問題