Namespaces
Variants
Actions
(Difference between revisions)

Archived:Controlling Actions item in Qt context-sensitive menus

Jump to: navigation, search
m (new version 4.6 download link)
Line 19: Line 19:
 
==Preconditions==
 
==Preconditions==
  
* [http://pepper.troll.no/s60prereleases/ Download the latest Qt for S60 distribution from Qt].
+
* Download and Install latest version [[Qt for Symbian - Installation packages]] which has links on how to install the latest version
* Install Qt for S60:[[Installing Qt on S60]]
+
  
  

Revision as of 16:25, 1 November 2009

{{{width}}}
Article Metadata

Tested with
Devices(s): All (S60)

Compatibility
Platform(s): S60 3rd Edition, FP1, FP2
S60 5th Edition

Article
Keywords: QWidget::setContextMenuPolicy(), QWidget::setSoftKeys()
Created: (14 Sep 2009)
Last edited: jimgilmour1 (01 Nov 2009)

Contents

Description

Qt for Symbian allows using a context-sensitive menu to be shown in the control pane area that changes dynamically based on the focused widget. This is done by assigning softkeys (see QWidget::setSoftKeys() for a widget. By default, a menu item for Actions (see QWidget::actions()) is added in a focused widget's options menu.

This behavior can be changed by controlling context menu policy of a widget, a property that holds how the widget shows a context menu.

Preconditions


Source code

MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
textEditor = new QTextEdit(tr("Hello"), this);
 
// Set context menu policy to 'none' to prevent Actions menu from being shown
textEditor->setContextMenuPolicy(Qt::NoContextMenu);
 
// Set softkeys to text editor for a context-sensitive menu
QAction* options = new QAction(tr("Options"), this);
options->setSoftKeyRole(QAction::MenuSoftKey);
QAction* exit = new QAction(tr("Exit"), this);
exit->setSoftKeyRole(QAction::ExitSoftKey);
 
QList<QAction*> textEditorSoftKeys;
textEditorSoftKeys.append(options);
textEditorSoftKeys.append(exit);
textEditor->setSoftKeys(textEditorSoftKeys);
 
setCentralWidget(textEditor);
 
// Add any common menu items into menu bar
fileMenu = menuBar()->addMenu(tr("&File"));
exit = new QAction(tr("&Exit"), this);
fileMenu->addAction(exit);
connect(exit, SIGNAL(triggered()), this, SLOT(close()));
}

Postconditions

Text editor has a menu without any visible Actions items.

See also

CS001351 - Adding Options menu, panes, and icon to a Qt for Symbian application

140 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved