StupidBeauty
Read times:570Posted at:Fri May 25 16:59:27 2012
- no title specified

Wt3.2.1文档翻译:Wt::WPopupMenu类参考,Wt::WPopupMenu Class Reference

详细描述

显示在一个弹出式窗口中的菜单。

这种菜单的典型用法是用作上下文菜单,它支持子菜单。不要将它与WMenu混淆,那个东西实现的是一个永远可见的导航菜单。

在一开始创建时,菜单本身不可见,直到调用popup()exec()。然后,菜单会保持可见,直到用户选择咯一个菜单项或者取消菜单(按Escape 或点击其它位置)。

这个类假设JavaScript 是可用的,以便将菜单放置在鼠标的当前位置,并且为当前选中的菜单项提供反馈。

类似于WDialog,有两种使用菜单的方式。最简单的方式就是使用其中的一个exec()方法,这样就会启动一个新的事件循环并且等待,直到用户取消这个弹出菜单(按Escape 或点击其它位置)或者选择一个菜单项。

或者,妳可以使用其中的一个popup()方法来显示出菜单,然后监听aboutToHide信号,到时再读取结果(result())。

妳有多种选择来对一个条目的选中情况进行反应:

使用示例:

//创建一个菜单,带有一些菜单项

WPopupMenu popup;

popup.addItem("icons/item1.gif", "Item 1");

popup.addItem("Item 2")->setCheckable(true);

popup.addItem("Item 3");

popup.addSeparator();

popup.addItem("Item 4");

popup.addSeparator();

popup.addItem("Item 5");

popup.addItem("Item 6");

popup.addSeparator();

WPopupMenu *subMenu = new WPopupMenu();

subMenu->addItem("Sub Item 1");

subMenu->addItem("Sub Item 2");

popup.addMenu("Item 7", subMenu);

WPopupMenuItem *item = popup.exec(event);

if (item) {

// ... 进行相关的操作。

}

样式单

WPopupMenu 具有Wt-popupmenu 样式类。它的外观可使用以下样式类选择器来覆盖:

.Wt-popupmenu .Wt-item, .Wt-popupmenu .Wt-selected : 菜单项

.Wt-popupmenu .Wt-selected : 选中的菜单项

.Wt-popupmenu .Wt-separator : 分隔符

WPopupMenu的屏幕截图:

WPopupMenu-default-1.pngWPopupMenu-default-1.png

WPopupMenu示例(默认外观)

WPopupMenu-polished-1.pngWPopupMenu-polished-1.png

WPopupMenu示例(漂亮外观)

参考:

WPopupMenuItem

成员函数文档

WPopupMenuItem * Wt::WPopupMenu::exec

(

const WPoint &

point

)

在指定位置执行此弹出菜单。

使用popup()来在文档坐标point处显示此弹出菜单,然后等待,直到用户选择咯某个菜单项,或者整个菜单被取消。

返回被选择的菜单(或子菜单)项,或者,如果用户取消咯菜单的话则返回0.

参考:

popup()

Your opinions
Your name:Email:Website url:Opinion content:
- no title specified

HxLauncher: Launch Android applications by voice commands

 
Recent comments
2017年4月~2019年4月垃圾短信排行榜Posted at:Thu Sep 26 04:51:48 2024
Qt5.7文档翻译:QWebEngineCookieStore类,QWebEngineCookieStore ClassPosted at:Fri Aug 11 06:50:35 2023盲盒kill -9 18289 Grebe.20230517.211749.552.mp4