Български English
Table of Content
Как се добавя меню с опции в Symbian приложение
Меню с опции и бутон за изход могат да бъдат сложени към QMainWindow [doc.qt.nokia.com], QDialog [doc.qt.nokia.com] или към QWidget [doc.qt.nokia.com] за Symbian. QMainWindow има предефинирани Symbian CBA бутони, но QDialog и QWidget нямат.
Предпоставки
Уверете се, че блоковете за статус и управление на екрана се включени. За да го направите извикайте метод showMaximized() на главния прозорец:
- int main(int argc, char *argv[])
- {
- MainWindow mainWindow;
- mainWindow.showMaximized();
- return app.exec();
- }
Създаване на меню в QMainWindow
QMainWindow има предефинирани Symbian CBA бутони и затова различните опции могат да бъдат добавени чрез нов action.
- menuBar()->addAction("Example", this, SLOT(exampleSlot()))
Моля, обърнете внимание, че exampleSlot() се извиква когато потребителя селекцира дадената опция и поради това той трябва също да бъде имплементиран.
Създаване на меню в QDialog или QWidget
Symbian CBA бутоните не са предефинирани за QDialog or QWidget и затова те трябва да бъдат дефинирани.
Инстанция на QMenu [doc.qt.nokia.com] трябва да бъде дефинирана в =h файла:
На подходящо място в кода трябва да бъде добавена имплементация на менюто с опции и бутона за изход:
- // Create menu
- m_pMenu->addAction("Example", this, SLOT(exampleSlot()));
- // Create Options CBA
- // Set defined menu into Options button
- pOptions->setMenu(m_pMenu);
- addAction(pOptions);
- // Create Exit CBA
- // Exit button closes the application
- addAction(pExitButton);
Разбира се десният бутон може да бъде ползван не само за изход от приложението. За да изпълнява други функционалности трябва да бъде свързан с друг слот.
Вижте също
Премахване на Actions от менюто с опции в Symbian [developer.qt.nokia.com]
Източници
Forum Nokia: Adding Options menu, panes and icon to a Qt for Symbian application [wiki.forum.nokia.com]

