MainWindow 菜单栏,工具栏,中心部件

MainWindow栏的实现

    • 菜单栏
      • ui编码
      • 纯代码
    • 工具栏
    • 内心部件
    • 状态栏
    • 资源机制
    • 登录界面实验小结
    • 后序:事件,过滤器,定时器

菜单栏

QMenuBar (QMenu(QAction))
即QMenuBar中存放QMenu,QMenu中存放Action列表
QAction需要槽函数,triggered()发出信号
清空:clear(),removeAction()

ui编码

QMenu * filemenu = ui.menuBar->addMenu("打开文件(&F)");
QAction *action_Open = filemenu->addAction(QIcon("../...路径"),
		tr("打开文件(&Q)"));
//ui编码菜单栏自带,无需创建

纯代码

QMenuBar *bar = MenuBar( );
QMenu *file = bar->addMenu(tr("file"));
QAction *action_Open = file->addAction(QIcon("../...路径"),
  tr("打开文件(&Q)")))

工具栏

最常用QToolButton,QComboBox
构建工具栏与布局相似

QToolBar * mainToolBar = addToolBar(“toolbar”);//有参数哦!
QToolButton *toolbtn = new QToolButton(this);
mainToolButton->addWidget(toolbtn);
//用菜单创建Action
QMenu *menu = new QMenu(this);
menu->addAction(tr("..."));
toolbtn->setMenu(menu);

内心部件

就如MainWindow中插入widget以便设置布局
setCentralWidget(widget);

状态栏

临时消息:showMessage(),在左边显示
正常消息:一般用addWidget( ),添加一个QLabel 显示,如页数,行数等
永久消息:addPermanentWidget(),添加一个QLabel显示,最右端,不会被临时消息掩盖。

资源机制

一般情况下,用来导入图片
在项目中添加好resource file 后

    bg = new QLabel(tr("background"));
    //图片插入QLabel
    bg->setPixmap(QPixmap("://image/image/bg.jpg"));
    //设置大小,图片自适应
     bg->setMaximumSize(400, 150);
     bg->setScaledContents(true);

登录界面实验小结

  1. 图片的QLabe插入
  2. QMap存储数据的夸文件使用:
    运用QMap存储数据的类中,实现一个public的方法,并在另一类中实现类对象,通过对象调用含有QMap的方法。
  3. 多个自定义类的头文件不能互相include,会出现类无法实例化的错误
  4. 弹窗方法:
    QMessageBox::information(this,tr(“窗口名”),tr(“弹窗内容”))
  5. 新弹窗打开办法:
void MyWorld::openRegister()
{
    logon->show();//logon为自定义类的实例
    }

后序:事件,过滤器,定时器

你可能感兴趣的:(MainWindow 菜单栏,工具栏,中心部件)