当前位置: 首页 > wzjs >正文

做网站用买服务器码做旅游网站的关注与回复

做网站用买服务器码,做旅游网站的关注与回复,域名购买,wordpress 神箭手QMainWindow 1. QMainWindow1.1 菜单栏添加菜单项菜单项信号槽 1.2 工具栏添加工具按钮工具栏的属性设置 1.3 状态栏1.4 停靠窗口(Dock widget) 1. QMainWindow QMainWindow是标准基础窗口中结构最复杂的窗口, 其组成如下: 提供了菜单栏, 工具栏, 状态…

QMainWindow

  • 1. QMainWindow
    • 1.1 菜单栏
      • 添加菜单项
      • 菜单项信号槽
    • 1.2 工具栏
      • 添加工具按钮
      • 工具栏的属性设置
    • 1.3 状态栏
    • 1.4 停靠窗口(Dock widget)

1. QMainWindow

QMainWindow是标准基础窗口中结构最复杂的窗口, 其组成如下:

  1. 提供了菜单栏, 工具栏, 状态栏, 停靠窗口
  2. 菜单栏: 只能有一个, 位于窗口的最上方
  3. 工具栏: 可以有多个, 默认提供了一个, 窗口的上下左右都可以停靠
  4. 状态栏: 只能有一个, 位于窗口最下方
  5. 停靠窗口: 可以有多个, 默认没有提供, 窗口的上下左右都可以停靠

1.1 菜单栏

添加菜单项

关于顶级菜单可以直接在UI窗口中双击, 直接输入文本信息即可, 对应子菜单项也可以通过先双击在输入的方式完成添加, 但是这种方式不支持中文的输入。
在这里插入图片描述
一般情况下, 我们都是先在外面创建出QAction对象, 然后再将其拖拽到某个菜单下边, 这样子菜单项的添加就完成了。

  • 通过UI创建菜单项(首选)
    在这里插入图片描述
    在这里插入图片描述
  • 通过代码的方式添加菜单或者菜单项
// 给菜单栏添加菜单
QAction *QMenuBar::addMenu(QMenu *menu);
QMenu *QMenuBar::addMenu(const QString &title);
QMenu *QMenuBar::addMenu(const QIcon &icon, const QString &title);// 给菜单对象添加菜单项(QAction)
QAction *QMenu::addAction(const QString &text);
QAction *QMenu::addAction(const QIcon &icon, const QString &text);// 添加分割线
QAction *QMenu::addSeparator();

实例代码

//创建菜单栏QMenuBar* menubar = menuBar();//将菜单栏放到窗口this->setMenuBar(menubar);//创建菜单QMenu* menu1 = new QMenu(u8"编辑");QMenu* menu2 = new QMenu(u8"视图");QMenu* menu3 = new QMenu(u8"工具");//将菜单放到菜单栏menubar->addMenu(menu1);menubar->addMenu(menu2);menubar->addMenu(menu3);//创建菜单项QAction* act1 = new QAction(u8"复制");QAction* act2 = new QAction(u8"剪切");QAction* act3 = new QAction(u8"删除");//将菜单项加入菜单//加入分割线menu1->addAction(act1);menu1->addAction(act2);menu1->addSeparator();menu1->addAction(act3);

菜单项信号槽

菜单项 QAction 事件的处理

// 点击QAction对象发出该信号
[signal] void QAction::triggered(bool checked = false);
// save_action 是某个菜单项对象名, 点击这个菜单项会弹出一个对话框
connect(ui->save_action, &QAction::triggered, this, [=]()
{QMessageBox::information(this, "Triggered", "我是菜单项, 你不要调戏我...");
});

1.2 工具栏

添加工具按钮

  • 方式1:先创建QAction对象, 然后拖拽到工具栏中, 和添加菜单项的方式相同
    首先将工具栏编辑框添加到界面中。
    在这里插入图片描述
    创建action动作然后拖动到工具栏中。
    在这里插入图片描述

  • 方式2:如果不通过UI界面直接操作,那么就需要调用相关的API函数了

// 在QMainWindow窗口中添加工具栏
void QMainWindow::addToolBar(Qt::ToolBarArea area, QToolBar *toolbar);
void QMainWindow::addToolBar(QToolBar *toolbar);
QToolBar *QMainWindow::addToolBar(const QString &title);// 将Qt控件放到工具栏中
// 工具栏类: QToolBar
// 添加的对象只要是QWidget或者启子类都可以被添加
QAction *QToolBar::addWidget(QWidget *widget);// 添加QAction对象
QAction *QToolBar::addAction(const QString &text);
QAction *QToolBar::addAction(const QIcon &icon, const QString &text);// 添加分隔线
QAction *QToolBar::addSeparator()
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);//可以通过对象和空间名字两种方式来访问控件// 添加第二个工具栏QToolBar* toolbarT = new QToolBar("toolbarT");this->addToolBar(Qt::LeftToolBarArea, toolbarT); 给工具栏添加按钮和单行输入框toolbarT->addWidget(new QPushButton(u8"搜索"));QLineEdit* edit = new QLineEdit;edit->setMaximumWidth(200);edit->setFixedWidth(100);toolbarT->addWidget(edit);// 添加QAction类型的菜单项ui->toolBar->addAction(u8"排除");
}

在这里插入图片描述

工具栏的属性设置

在UI窗口的树状列表中, 找到工具栏节点, 就可以到的工具栏的属性设置面板了, 这样就可以根据个人需求对工具栏的属性进行设置和修改了。上面的类是继承的父类的属性设置。
在这里插入图片描述
在Qt控件的属性窗口中对应了一些属性, 这些属性大部分都应了一个设置函数
在对应的类中函数名叫什么?
规律: set+属性名 == 函数名
某些属性没有对应的函数, 只能在属性窗口中设置

1.3 状态栏

一般情况下, 需要在状态栏中添加某些控件, 显示某些属性, 使用最多的就是添加标签 QLabel

// 类型: QStatusBar
void QStatusBar::addWidget(QWidget *widget, int stretch = 0);[slot] void QStatusBar::clearMessage();
[slot] void QStatusBar::showMessage(const QString &message, int timeout = 0);
    //状态栏添加子控件按钮ui->statusbar->showMessage(u8"状态栏信息显示",3000);QPushButton* button = new QPushButton(u8"按钮");ui->statusbar->addWidget(button);// 标签QLabel* label = new QLabel("hello,world");ui->statusbar->addWidget(label);//调用定时器静态方法,一次信号槽连接QTimer::singleShot(5000, this, [=]() {button->show();label->show();});

在这里插入图片描述

1.4 停靠窗口(Dock widget)

停靠窗口可以通过鼠标拖动停靠到窗口的上、下、左、右,或者浮动在窗口上方。如果需要这种类型的窗口必须手动添加,如果在非QMainWindow类型的窗口中添加了停靠窗口, 那么这个窗口是不能移动和浮动的。
浮动窗口在工具栏中, 直接将其拖拽到UI界面上即可。
在这里插入图片描述
停靠窗口也有一个属性面板, 我们可以在其对应属性面板中直接进行设置和修改相关属性。
在这里插入图片描述

如何向浮动窗口添加控件?直接拖入


文章转载自:

http://LhVnq7UZ.gywxq.cn
http://FEHBKhjN.gywxq.cn
http://QmHMqYBR.gywxq.cn
http://c7MQyfLo.gywxq.cn
http://D9upa8oq.gywxq.cn
http://nL1WOkMv.gywxq.cn
http://uzPs73ve.gywxq.cn
http://mH1YJsfd.gywxq.cn
http://IBlGBxat.gywxq.cn
http://vi5vpT0C.gywxq.cn
http://rqzdOkpy.gywxq.cn
http://tnLLKC0z.gywxq.cn
http://m0BqXxWK.gywxq.cn
http://qVOAniCo.gywxq.cn
http://BYJyvZL6.gywxq.cn
http://LPihNF7D.gywxq.cn
http://K0g64ivQ.gywxq.cn
http://eMdi2YA6.gywxq.cn
http://o22IvjLn.gywxq.cn
http://pR2ROxiw.gywxq.cn
http://0J8WFiw5.gywxq.cn
http://RLtS5KV0.gywxq.cn
http://lCEMXbtH.gywxq.cn
http://AbhVmXap.gywxq.cn
http://t597AWqz.gywxq.cn
http://ThKlzugN.gywxq.cn
http://Empx7ytn.gywxq.cn
http://AopsbQy8.gywxq.cn
http://u53RRTZf.gywxq.cn
http://mgOuEJay.gywxq.cn
http://www.dtcms.com/wzjs/682403.html

相关文章:

  • 济宁做网站有哪几家网站建设的技术有哪些内容
  • 导购网站一站式建站网站线框图
  • 请人做网站需要多少钱flash网站优化
  • 设计素材网站推荐pin如何查网站pv
  • 海外直购网站建设方案书范文做网站需要哪些软件
  • 企业网站流量做网站第一
  • wordpress网站多层循环调用文章如何设计网站后台
  • 做网站哪种字体好看go语言做网站
  • 企业网站 响应式 案例widgets wordpress怎么建
  • 淘客怎么做网站泰安网约车
  • 哪些网站做任务可以赚钱的是不是该填写完整
  • 删除的网站做404wordpress.图片旋转代码
  • 杭州品牌网站建设公司什么网站可以做汽车国际贸易
  • 学做ps的网站网络科技公司的经营范围有哪些
  • wordpress建站难不难wordpress进入后台
  • 请简述企业网站的推广阶段及其特点太原网站制作好吗
  • 学校加强网站建设wordpress主题大前端
  • 在哪给人做网站教育网站赏析
  • 如何建立一个视频网站重庆的网络公司
  • 宁波网站建设怎么样泸州百度做网站联系
  • 互联网公司排名2023网站优化软件排名技术
  • 广州网站营销优化开发网站建设耂首先金手指
  • 网站外链价格wordpress 上传安装不了
  • 做网站盘锦营销推广方法有哪些
  • 域名有什么用网站建设优化服务好么
  • wordpress整站手机端给别人做网站前要问些什么问题
  • 西宁做网站公司开通微商城要多少钱
  • 品牌网站运营云南测绘公司最新排名
  • 安平县建设局网站网站域名选择
  • 旅游网站的导航栏目设计腾讯企点官网