首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
qt中可以伸缩的菜单栏
2024-09-01
【Qt开发】菜单栏,工具栏和状态栏
概述 菜单栏,工具栏,状态栏应用中经常见到,下图解释一目了然,实际开发中 两种方式来实现,一种是使用纯代码QMenuBar,QToolBar,QStatusBar来设计开发,另一种使用Qt Designer通过拖拽的形式来实现,减少了大量的代码,使用简单. 菜单栏 1.新建项目UI基类选择QMainWindow. 2.双击在这里输入,可修改一级菜单的名称. 3.动作编辑器里添加actionOpen,actionSave两个动作 4.鼠标左键拖拽action到文件下的二级菜单即可,同时打开和保存之
Qt中的主窗口之菜单栏
1.Qt中的主窗口 主窗口为建立应用程序用户界面提供了一个框架 Qt开发平台中直接支持主窗口的概念 QMainWindow是Qt中主窗口的基类 QMainWindow继承于QWidget是一种容器类型的组件 QMainWindow只能作为顶层组件 2.QMainWindow的优势--QMainWindow类拥有自己的布局 3. 主窗口中的菜单 (1)Qt提供与菜单相关的类组件 (2)QMenuBar类.QMenu类和QAction类 ①QMenuBar:QMenuBar类提供了一个水平的菜单栏,
第47课 Qt中的调色板
1. QPalette类 (1)QPalette类提供了绘制QWidget组件的不同状态所使用的颜色. (2)QPalette对象包含了3个状态的颜色描述 ①激活颜色组(Active):组件获得焦点使用的颜色搭配方案 ②非激活颜色组(Inactive):组件失去焦点使用的颜色方案 ③失效颜色组(Disabled):组件处于不可用状态使用的颜色方案 2.QPalette类中颜色组用途 (1)QPalette类中的颜色组定义了组细节的颜色值 (2)QPalette::ColorRole中的常量值用于
第38课 Qt中的事件处理(上)
1. GUI程序原理回顾 (1)图形界面应用程序的消息处理模型 (2)思考:操作系统发送的消息如何转变为Qt信号 2. Qt中的事件处理 (1)Qt平台将系统产生的消息转换为Qt事件 ①Qt事件是一个QEvent的对象 ②Qt事件用于描述程序内部或外部发生的动作 ③任意的QObject对象都具备事件处理的能力 (2)GUI应用程序的事件处理方式 ①Qt事件产生后立即被分发到QWidget对象 ②调用QWidget::event(QEvent*)进行事件处理 ③event()根据事件类型的不同,调
第30课 Qt中的文本编辑组件
1. 3种常用的文本编辑组件的比较 单行文本支持 多行文本支持 自定义格式支持 富文本支持 QLineEdit (单行文本编辑组件) Yes No No No QPlainTextEdit (多行普通文本编辑组件) Yes Yes No No QTextEdit (多行富文本编辑组件) Yes Yes Yes Yes 2. Qt中常用文本编辑组件的继承层次图 3. 常用文本编辑组件的内置功能 (1)右键弹出式菜单 (2)快捷键功能:复制.粘贴.剪切等 [编程实验]文本编辑组件的对比实验 //ma
Qt 学习之路 :菜单栏、工具栏和状态栏
在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一些细节问题,比如资源文件的使用.对象模型以及布局管理器.这一节则是详细介绍关于菜单栏.工具栏以及状态栏的相关内容. 我们假设窗口还是建立在QMainWindow类之上,这会让我们的开发简单许多.当然,在实际开发过程中,QMainWindow通常只作为“主窗口”,对话框窗口则更多地使用QDialog类.我们会在
QT中QMainWindow、QWidget、QDialog
QT中QMainWindow.QWidget.QDialog 简述 在分享所有基础知识之前,很有必要在这里介绍下常用的窗口-QWidget.QDialog.QMainWindow. 熟悉Qt的同学都应该知道,在新建Qt Widgets项目进行类信息选择时会碰到它们,没错,很巧,每次都能碰到.所以,在以后的Qt开发中,我们会经常和它们打交道.常言道,知己知彼,百战不殆.只有了解它们.熟悉它们,才能更好地驾驭它们... QWidget继承于QObject和QPaintDevice,QDialog和Q
Qt中常用知识点
1:QRegExp 正则表达式 QRegExp regExp("[a-zA-Z][1-9][0-9]{0,2}"); xxx->setValidator(new QRegExpValidator(regExp,this)); lineEdit->setValidator(new QRegExpValidator(regExp,this)); 2:QObject::connect() connect(objectA,SIGNAL(methodA()),objectB,SL
qt中的菜单QMenu QAction
Qt中要建立菜单,有三个类很重要: QMenuBar(QWidget * parent = 0) QMenu(QWidget * parent = 0) QMenu(const QString & title, QWidget * parent = 0) QAction(QObject * parent) QAction(const QString & text, QObject * parent) QAction(const QIcon & icon, const QString
PyQt(Python+Qt)学习随笔:快速理解Qt 中Action是什么
一.引言 Qt中Action这个词接触很久了,一直以来没去学习,今天终于准备学习了,查了些资料,初步总结为: Action为界面操作的抽象,应用程序可以通过菜单,工具栏按钮以及键盘快捷键来调用通用的命令- 看了这些,感觉似乎知道了又似乎还是没明白.但当通过Qt Designer进行菜单编辑时一下子就理解了. 二.Action与菜单关系 下图是在一个mainWindow上添加了system菜单并在其下添加了Quit和About两个实际操作的子菜单: 可以看到添加完菜单后,就自动在menubar下添
Qt 中使用Singleton模式需小心
在qt中,使用Singleton模式时一定要小心.因为Singleton模式中使用的是静态对象,静态对象是直到程序结束才被释放的,然而,一旦把该静态对象纳入了Qt的父子对象体系,就会导致不明确的行为.并且,就算我们小心谨慎的不把父对象指针传入构造函数(即不给该静态对象制定父对象),根据Qt的某些机制,还是有可能重定义父对象的,而这恰恰是最致命的,最容易疏忽的. 所以说,在QT中使用Singleton模式,确切说是"静态对象",一定要小心,特别是那些继承于QWidget的嵌套窗口类,就算
qt中ui的 使用介绍
1.什么是ui?ui通常是用Qt 设计师设计出来的界面文件的后缀.通常情况下ui是一个指向这个界面类的指针.ui-> 一般就是用来访问这个界面类里面的控件.例如你的ui文件里有一个叫okButton的QPushButton.你就可以这样来访问这个按钮ui->okButton. setupUi(this)是由.ui文件生成的类的构造函数,这个函数的作用是对界面进行初始化, 它按照我们在Qt设计器里设计的样子把窗体画出来,把我们在Qt设计器里面定义的信号和槽建立起来. 也可以说,setupUi 是
Qt中 QString 和int, char等的“相互”转换
转载:http://blog.csdn.net/ei__nino/article/details/7297791 Qt中 int ,float ,double转换为QString 有两种方法 1.使用 QString::number(); 如: long a = 63; QString s = QString::number(a, 10); // s == "63" QString t = QString::number(a, 16).toUpper();
QT 中 关键字讲解(emit,signal,slot)
Qt中的类库有接近一半是从基类QObject上继承下来,信号与反应槽(signals/slot)机制就是用来在QObject类或其子类间通讯的方法.作为一种通用的处理机制,信号与反应槽非常灵活,可以携带任意数量的参数,参数的类型也由用户自定.同时其本身也是类型安全的,任何一个从QObject或其子类继承的用户类都可以使用信号与反应槽. 信号的作用如同Windows系统中的消息.在Qt中,对于发出信号的对象来说,它并不知道是谁接收了这个信号.这样的设计可能在某些地方会有些不便,但却杜绝
第39课 Qt中的事件处理(下)
1. 事件的传递过程 (1)操作系统检测到用户动作时,会产生一条系统消息,该消息被发送到Qt应用程序 (2)Qt应用程序收到系统消息后,将其转化为一个对应的QEvent事件对象,并调用QObject::event()将其分发出去. (3)事件对应被分发到当前正在操作的窗口部件上,该窗口部件会调用QWidget::event()函数来处理,然后,在这个函数内部又会调用其他的子函数(如KeyPressEvent或mouseReleaseEvent)来进行具体的处理. (4)event函数处理完后,可
第32课 Qt中的文件操作
1. Qt的中IO操作 (1)Qt中IO操作的处理方式 ①Qt通过统一的接口简化了文件和外部设备的操作方式 ②Qt中的文件被看作一种特殊的外部设备 ③Qt中的文件操作与外部设备的操作相同 (2)IO操作中的关键函数接口——IO操作的本质:连续存储空间的数据读写 ①打开设备:bool open(OpenMode mode); ②读取数据:QByteArray read(qint64 maxSize); ③写入数据:qint64 write(const QByteArray& byteArray);
Windows平台下Qt中glut库的使用
用Qt中的QGLWidget窗体类中是不包括glut工具库的,难怪在myGLWidget(在我的程序中是QGLWidget的派生类)中绘制实心球体是说“glutSolidSphere”: 找不到标识符,就是说没有这个函数的声明.接下来就来安装glut库: 1.先下载glut库http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip. 2.将下载下来的文件解压,将glut32.lib和glut.lib两个lib文件移到qt目
Qt中使用Windows API
在Windows平台上进行开发,不可避免与Windows API打交道,Qt中使用的时候要添加对应API的头文件和链接lib文件,另外使用的Windows API的代码部分要使用#ifdef Q_OS_WIN和#endif包起来,养成好习惯.
在VMware中安装ubuntu出现菜单栏无法显示的情况
在VMware中安装ubuntu出现菜单栏无法显示的情况 其实这个问题的原因时由于VMware中enable了3D图形加速界面,只需要shutdown当前运行的虚拟机,然后在虚拟机,设置,显示器,3D图形中把3D图形勾选取消就ok了~ 另外,在Linux中安装VM tools,也很简单,VMware本身自带了VM tools的安装光盘,点击VMware中的虚拟机,重新安装vmtools就可以了,然后会在Linux中弹出vmtools的安装光盘, 在Linux中将光盘解压,解压VMtools后面跟
Qt中sizeof
class a{ int d; // virtual void ssss(); }; qDebug() <<sizeof(a) << sizeof(int) << sizeof(void*); 打印: 4 4 8 class a{ int d; virtual void ssss(); }; qDebug() <<sizeof(a) << sizeof(int) << sizeof(void*); 打印: 16 4 8 内存对齐的原故
Qt中使用ActiveX(3篇)
由于最近需要使用ActiveX,一般来说可以使用微软提供的MFC或者ATL框架来开发,由于我个人对这部分内容不是很熟悉,好在Qt也提供对于ActiveX的支持.本文主要记录个人学习ActiveX的一些内容,方便日后查阅.本文以Qt5(5.3.1)提供的ActiveX为参考,但是由于ActiveX这部分比较稳定,因此Qt4应该也是一样的. 概述 Qt提供了QtActiveX模块来支持微软ActiveX的开发,Qt的ActiveX和COM的开发支持两种方式: 支持将已有的COM或者ActiveX空间
热门专题
对列 fifo filo
磁力链接suopou搜索引擎
linux安装dlib
怎么使用vue实现文本改变
phpmssql中文不能insert
小程序input输入框的placeholder不会自动消失
浏览器 远程服务器jupyter
-source 1.7 中不支持 lambda 表达式
hyper-vip固定
reset_index函数
Angular7 xml转json
oracle增加自增id数据
netcore 多个context
熵值法的Python实现 好吃的鱿鱼
java大批量导出接口一直挂
mybatis嵌套查询弊端
fakelocation正版作者是哪个
网页倒计时代码怎么设置
clover倒计时修改
html - 转义字符