3

特定のテキストを含むいくつかのQActionオブジェクトを追加したQMenuオブジェクトがあります。実行時にこれらのQActionのテキストを変更したいことを除いて、すべてうまく機能します。QMenu APIを調べましたが、それらを取得する方法が見つかりませんでした。また、actions.at(x)やその他のいくつかのことも試しました。これを行う正しい方法は何ですか?

4

1 に答える 1

1

それは本当にあなたがあなたのアプリをどのように構築しているかに依存します。QAction状況によっては、直接アクセスできるメンバーとして自分のを保存している場合があります。または、を保存しQMenuQAction'sを入力するだけの場合もあります。いずれにせよ、あなたがあなたの行動を起こしたら、あなたはただそれを呼びますsetText(QString)

// init
menu = new QMenu(this);
...
menu->addAction("foo");

// later on
QAction *action = menu->actions().at(0); // access just the first QAction
action->setText("bar");

QMenuまた、場所ごとにアクションを検索することもできますQPoint。繰り返しますが、実際には、変更するアクションをどのように決定するかによって異なります。

于 2012-12-21T05:45:21.947 に答える