Проблема с созданием меню опций на устройстве S60 с использованием Qt - PullRequest
1 голос
/ 25 июня 2011

Я хочу создать стандартное меню опций, которое отображается после нажатия программной клавиши Опции на Nokia E52.Это что-то похожее на это:

menu

Мой код выглядит так:

this->changefile = menuBar()->addAction(tr("Change file"),this,SLOT(openFileChooser()));
this->changefile->setEnabled(true);

Проблема в том, что когда я нажимаю кнопку, которая должна показать это менюНичего не произошло.Там нет меню.Что не так с моим кодом?Пожалуйста, помогите.

1 Ответ

2 голосов
/ 25 июня 2011

Вот как я создаю меню функциональных клавиш:

//Create the action and set its softkey role
leftKeyAction_mp = new QAction( this );
leftKeyAction_mp->setText( "Options" );
leftKeyAction_mp->setSoftKeyRole( QAction::PositiveSoftKey );

//Add the action to the widget (QWidget::addAction)
addAction( leftKeyAction_mp );

//Create the menu and add set it for the action
optionsMenu_mp = new QMenu( this );
leftKeyAction_mp->setMenu( optionsMenu_mp );

//Add an action to the menu
optionsMenu_mp->addAction( "Item", this, SLOT( itemClicked() ) );

Помните, что виджет, имеющий меню, должен быть активным виджетом верхнего уровня, чтобы меню отображалось.

ЛучшийС уважением

...