qt中的部件的彈出選單(contextmenu),依據contextmenupolicy的值的不同,有四種形式:
一、預設選單
此時,contextmenupolicy的值為qt::defaultcontextmenu,這是預設值,其將顯示部件定義的預設選單
二、無選單
此時,contextmenupolicy的值為qt::nocontextmenu
三、由action定義選單
此時,contextmenupolicy的值為qt::actionscontextmenu,要為此部件定義這種選單,很簡單,只要把已經定義好的action部件插入到要顯示此選單的部件中,部件將自動按順序顯示選單。
qwidget::addaction(qaction *action);
四、自定義選單
此時,contextmenupolicy的值為qt::customcontextmenu,這回,有兩種方式來定義選單,一種是響應
customcontextmenurequested()這個signal,在響應的槽中顯示選單(qmenu的exec()方法)。第二種是需要從這個部件的類中派生乙個類,重寫contextmenuevent()這個函式顯示選單(qmenu的exec()方法顯示)。
第三種很簡單:
void mainwidget::createcontextmenu()
下面介紹 第四種
qt::customcontextmenu:
#ifndef widget_h
#define widget_h
#include
class widget : public qwidget;
#endif // widget_h
#include "widget.h"
#include
widget::widget(qwidget *parent)
: qwidget(parent)
widget::~widget()
void widget::createaction()
void widget::createcontextmenu()
void widget::contextmenuslot(qpoint p)
google的傳播創想
google的傳播創想 三 基本假設 1 google中國的傳播分為了產品傳播 企業形象傳播及市場競爭性傳播 2 google中國的傳播策略 企業形象 通過傳播google企業文化及公益活動,樹立良好的企業公民形象 通過招聘程序不斷強化傳播創新 自由的企業文化,同時吸引青年一代,使他們喜歡googl...
google的傳播創想
google的傳播創想 三 基本假設 1 google中國的傳播分為了產品傳播 企業形象傳播及市場競爭性傳播 2 google中國的傳播策略 企業形象 通過傳播google企業文化及公益活動,樹立良好的企業公民形象 通過招聘程序不斷強化傳播創新 自由的企業文化,同時吸引青年一代,使他們喜歡googl...
字元創中的正則
match的使用 var str abc 123,def 456,ghi 789 把裡面所有的數字全部顯示出來 var arr str.match d g g 表示的是全域性模式匹配 console.log arr 123 456 789 regexp.的使用 var email 15124doa ...