范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Qt窗口部件

  QWidget类关系图
  QT提供的默认部件基类包括QMainWindow、QWidget、和QDialog这三种,这三个部件基类也是用的最多的。
  回到顶部 1. QMainWindow:
  QMainWindow类提供一个带有菜单条,工具条和一个状态条的主应用程序窗口。它有自己单独的布局。主窗口通常提供一个大的中央窗口部件,以及周围菜单,工具条,和一个状态栏。QMainWindow窗口经常被继承,使得封装中央部件,菜单,工具条,状态栏等都变得很容易,当用户点击它的时候,相应的槽就会被调用。布局有一个中心区域,通常是标准的Qt部件,也可以是定制部件,且必须有一个中心小部件。setCentralWidget()方法可设置中心部件。
  如:
  将 textEdit设置为中心部件
  回到顶部 2. QWidget
  QWidet类是所有用户界面对象的基类,被称为基础窗口部件,继承关系详看文章开头的QWidget类关系图。QWidget提供自我绘制和处理用户输入等基本功能,如接收鼠标、键盘和其它事件,并且在屏幕上绘制自己的表现。每一个窗口部件都是矩形,并且它们按Z轴顺序排列的。一个窗口部件可以被它的副窗口部件或者它前面的窗口部件盖住一部分。一个没有副窗口部件的窗口部件一定是顶级窗口部件。非顶级窗口部件是父窗口的子部件。
  QWidget构造函数有两个参数:QWidget *parent = 0 和 Qt::WindowFlags f = 0。parent即父窗口,默认为0,即没有父窗口,是顶级窗口,如果指定 parent 值则当前窗体将会是一个子部件。Qt::WindowFlags 是 Qt::WindowType 枚举值的组合,用来设置窗口的属性,f = 0 表默认为 Qt::Widget 风格,其余窗口属性详见下表。
  点击领取Qt学习资料+视频教程~「链接」
  Qt:WindowFlags 释义
  Qt::WidgetQWidget 构造函数的默认值,如果新的窗口部件没有父窗口部件,则它是一个独立的窗口,否则就是一个子窗口部件。另请参见Qt :: Window和Qt :: SubWindow。
  Qt::Window 无论是否有父窗口部件,新窗口部件都是一个窗口,通常有一个窗口边框和一个标题栏 。请注意,如果部件没有父控件,则无法取消设置此标记(即如果存在父控件,则可以取消此标记,否则,必须存在此标记用以标识此控件是个独立窗口)。
  Qt:: Dialog 新窗口部件是一个对话框,它是QDialog构造函数的默认值。如果要将其用作模态对话框,则应从另一个窗口启动它,或者如果有父窗口,则与QWidget::windowModality属性一起使用。如果将其设置为模态,则对话框将阻止应用程序中的其他顶级窗口获取任何输入。我们将具有父级的顶级窗口称为辅助窗口。
  Qt::Sheet 新窗口部件是一个Macintosh表单(sheet) 。由于使用工作表意味着窗口模态,推荐的方法是使用QWidget :: setWindowModality()或QDialog :: open()。
  Qt:: Drawer 新窗口部件是一个Macintosh抽屉(drawer)
  Qt::Popup 新窗口部件是一个弹出式顶层窗口
  Qt::Tool 新窗口部件是一个工具(tool)窗口,它通常是一个用于显示工具按钮的小窗口。如果一个工具窗口有父窗口部件,则它将显示在父窗口的部件上面,否则相当于使用了Qt::WindowStaysOnTopHint提示。如果窗口系统支持它,工具窗口可以用更轻的框架装饰。它也可以与Qt :: FramelessWindowHint结合使用。
  Qt::ToolTip 表示窗口小部件是工具提示。 这在内部用于实现工具提示,没有标题栏和窗口边框。
  Qt:: Desktop 新窗口部件是桌面,它是QDesktopWidget构造函数的默认值
  Qt::SplashScreen 新窗口部件是一个欢迎窗口,它是SplashScreen构造函数的默认值。
  Qt::SubWindow 新窗口部件是一个子窗口,而无论窗口部件是否有父窗口部件。此外,Qt还定义了一些控制窗口外观的窗口提示(这些窗口提示仅对顶层窗口有效)
  Qt::ForeignWindow 指示此窗口对象是表示由另一个进程创建的本机平台窗口或手动使用本机代码的句柄。
  Qt::CoverWindow 表示该窗口代表一个封面窗口,例如,当应用程序在BlackBerry平台上最小化时显示。
  Qt::MSWindowFiredSizeDialogHint为Windows 系统上的窗口装饰一个窄的对话框边框,通常这个提示用于固定大小的对话框
  Qt::MSWindowOwnDC为Windows 系统上的窗口添加自身的显示上下文菜单
  Qt::BypassWindowManagerHint 此标志可用于向平台插件指示应禁用"所有"窗口管理器协议。 此标志的行为会有所不同,具体取决于运行应用程序的操作系统以及正在运行的窗口管理器。 该标志可用于获取没有配置集的本机窗口。
  Qt::X11BypassWindowManagerHint 完全忽视窗口管理器,它的作用是产生一个根本不被管理的无窗口边框的窗口(此时,用户无法使用键盘进行输入,除非手动调用QWidget::activateWindow()函数)
  Qt::FramelessWindowHint: 产生一个无窗口边框的窗口,此时用户无法移动该窗口和改变它的大小
  Qt::NoDropShadowWindowHint 在支持平台上禁用窗口投影
  Qt::CustomizeWindowHint 关闭默认的窗口标题提示
  Qt::WindowTitleHint 为窗口装饰一个标题栏
  Qt::WindowSystemMenuHint 为窗口添加一个窗口系统系统菜单,并尽可能地添加一个关闭按钮
  Qt::WindowMinimizeButtonHint 为窗口添加一个"最小化"按钮
  Qt::WindowMaximizeButtonHint 为窗口添加一个"最大化"按钮
  Qt::WindowCloseButtonHint 为窗口添加一个"关闭"按钮
  Qt::WindowMinMaxButtonHint 为窗口添加一个"最小化"按钮 和一个"最大化"按钮
  Qt::WindowContextHelpButtonHint 为窗口添加一个"上下文帮助"按钮
  Qt::WindowStaysOnTopHint 告知窗口系统,该窗口应该停留在所有其他窗口的上面
  Qt::WindowType_Mask 一个用于提示窗口标识的窗口类型部分的掩码
  setWindowState() 可设置窗体的状态,参数由 Qt::WindowStates 枚举值指定,窗体状态如下表所示。
  窗体状态
  作用
  Qt::WindowNoState
  窗体为正常状态
  Qt::WindowMinimized
  窗体最小化
  Qt::WindowMaximized 窗体最大化
  Qt::WindowFullScreen
  窗体全屏显示
  Qt::WindowActive
  窗体为活动窗体
  QWidget设计模式属性设置: enabled 启用或禁用widget,默认启用。 geometry widget的位置和尺寸。 sizePolicy 设置widget在水平和垂直方向的伸缩策略以及伸缩因子(Stretch Factors),所谓伸缩策略实际就是widget对待部件大小提示的策略,需结合布局管理器一起使用。伸缩策略可通过调用 setSizePolicy() 方法设置,大小提示可通过 sizeHint() 函数返回值获取,也可重载 sizeHint() 方法进行重置。 拉伸因子描述了各个部件在进行拉伸时,部件间以指定的比例进行拉伸,如水平布局的三个按钮其拉伸因子分别设为1,2,3则表示该3个按钮将会以1:2:3的比例进行拉伸。注意:1.当主窗口的大小不能按计算出来的比例容纳下所有子部件时,子部件不一定会按设计好的比例进行排列。
  大小策略与拉伸因子之间的关系:
  若部件的拉伸因子大于0,则按照拉伸因子的比例分配空间;若拉伸因子为0,则只有在其他部件不需要空间时才会获得空间;也就是说若一些部件拉伸因子大于0,而一些部件拉伸因子为0,则只有拉伸因子大于0的部件会被拉伸,而拉伸因子为0的部件不会被拉伸。若所有部件的拉伸因子都为0,则按照大小策略的规则对部件进行拉伸。注意:2.若部件的大小策略为Fixed,则即使设置了拉伸因子,该部件也不会被拉伸。故拉伸因子会使大小策略不起作用或失效(除了Fixed策略外)
  属性值
  作用
  Fixed
  尺寸不能改变,尺寸为sizeHint大小
  Minimum
  尺寸可以拉伸,尺寸可变范围: sizeHint
  Maximum
  尺寸可以缩小,尺寸可变范围:minimumSizeHint ~ sizeHint
  Preferred
  可以变大缩小,尺寸可变范围: minimumSizeHint
  Expanding
  可以变大缩小,尺寸可变范围: minimumSizeHint,且部件有优先扩展权(注:优先扩展权表部件将尽可能多的占用空间,如Preferred与Expanding同时存在则优先分配空间给Expanding)
  MinimumExpanding
  尺寸可以拉伸,尺寸可变范围: minimumSizeHint,且部件有优先扩展权
  Ignored
  任意变大缩小,尺寸可变范围: minimumSizeHint(若minimumSizeHint为0,则可缩小至0,此时部件不可见)
  minimumSize 设置部件的最小尺寸,伸缩时不可继续缩小。 maximumSize 设置部件的最大尺寸,伸缩时不可继续变大。 palette 画板,设置部件的基本样式。 mouseTracking 鼠标跟踪,鼠标离开部件范围后,部件仍可以接收到mousemove等事件。 tabletTracking 平板或手机的陀螺仪、加速度传感器跟踪。 focusPolicy 焦点策略,按钮可以通过NoFocus使虚线消失,lineedit这类文本编辑框必须能获得焦点。
  属性值
  作用
  NoFocus
  无法通过点击和键盘获得焦点
  TabFocus
  鼠标无法获得焦点,Tab键获得焦点
  ClickFocus
  鼠标点击获得焦点,Tab键无法获得焦点
  StrongFocus
  鼠标和Tab键都可以获得焦点
  WheelFocus
  通过滚轮获得焦点
  contextMenuPolicy 上下文菜单策略,指定菜单的显示方式。
  属性值
  作用
  NoContextMenu
  部件无菜单,菜单处理延迟到部件附亲
  PreventContextMenu
  部件无菜单,菜单处理不延迟到父亲,而是传递到本身。
  DefaultContextMenu
  调用部件的contextMenuEvent方法,默认处理方式为忽略上下文事件。
  ActionsContextMenu
  部件菜单由 actions定义构成
  CustomContextMenu
  部件菜单自定义,发送customContextMenuRequested信号
  acceptDrops 设置部件是否接受拖拽事件,默认启用。 toolTip 设置部件的提示,鼠标悬浮时会显示。 toolTipDuration 设置widgettoolTip的显示持续时间,毫秒为单位,默认为-1,会一直显示。 statusTip 设置部件的状态提示,当窗口有statusBar时会显示在上面。 whatsThis 某些窗口会有whatsThis按钮,选中后点击其他按钮会显示帮助信息 accessibleName 辅助功能客户端应用程序所使用的控件名称。 accessibleDescription主要用来为视力较差或盲人用户,提供更大的上下文,也可以使用上下文搜索或其他应用程序。 layoutDirection widget布局的方向,LeftToRight,RightToLeft,LayoutDirectionAuto,字面意思 autoFillBackground 设置widget背景是否被画板颜色自动填充,默认不勾选 styleSheet 设置widget的qss样式表 locale 设置widget的区域和语言,在将时间等信息转成字符串后,年月日几个字会显示不同语言 inputMethodHint 设置widget输入时的屏幕键盘模式,有纯数字、纯字母等多种模式,用在手机端
  回到顶部 3. QDialog
  QDialog类是对话框窗口的基类,对话框窗口主要用于 短期任务和用户进行短期通讯的顶级窗口,其继承自QWidget,对话框有两种表现形式:模态对话框 或者是 非模态对话框。QDialog支持扩展并带有返回值,他们可以带有默认值
  模态对话框: 模态对话框就是阻塞同一应用程序中其它可视窗口的输入的对话框。用户必须完成当前对话框中的交互操作并且关闭窗口后才能操作应用程序中的其它窗口。模态对话框有它们自己的本地事件循环。exec()方法可使窗口以模态方式运行。当用户关闭这个对话框,exec()将提供一个可用的返回值并且这时流程控制继续从调用exec()的地方进行。通常,我们连接默认按钮,例如"OK"到accept()槽并且把"Cancel"连接到reject()槽,来使对话框关闭并且返回适当的值。另外我们也可以连接done()槽,传递给它Accepted或Rejected。
  非模态对话框: 当被打开时,用户既可选择和该对话框进行交互,也可以选择同应用程序的其他窗口交互。非模态对话框(Modeless Dialog)的概念是一个概念,不仅仅Qt中具有,在其他不同的平台下 也都存在。但是叫法可能有区别,例如模式对话框,无模式对话框等。
  模态窗口运行:
  (1)调用exec()方法,如
  QDialog dlg;
  dlg.exec();
  (2)调用setModal()方法设置模态,如
  QDialog dlg;
  dlg.setModal(true);
  dlg.show();
  (3)QWidget widget;
  widget.setWindowModality(Qt::ApplicationModal);
  widget.show();
  阻塞方式
  阻塞效果
  Qt::ApplicationModal
  阻塞应用程序的所有窗口
  Qt::WindowModal
  阻塞阻塞父窗口、祖先窗口及它们的子窗口
  Qt::NoModal
  不阻塞,默认值
  4. 其他部件4.1QLabel
  常用来显示文本、数字、图片、gif动图。 4.2QLineEdit 接收用户输入
  显示模式
  显示模式
  效果
  QLineEdit::Normal
  正常显示
  QLineEdit::NoEcho
  不显示
  QLineEdit::Password
  密码显示
  QLineEdit::PasswordEchoOnEdit
  编辑时候正常显示,其他密码显示
  4.3 QLineEdit 掩码字符
  字符(必须输入)
  字符(可留空)
  含义
  A
  a
  只能输入A-Z,a-z
  N
  n
  只能输入A-Z,a-z,0~9
  X
  x
  可以输入任意字符
  9
  0
  只能输入0-9   D   d   只能输入1-9   #   只能输入 +, -, 0-9   H   h   只能输入十六进制字符 (0-9,a-f,A-F)   B   b   只能输入二进制字符(0,1)   >   后面的字母字符自动转换为大写   !   停止字母字符的大小写转换   将该表中的特殊字符正常显示用作分隔符   QPushButton 按钮类,常用显示文字、图标。   QRadioButton 单选按钮类,只能选一个,当将单选按钮加入一个分组框中时,加入的按钮便是一个分组,分组中只能选中一个,具有排他性。QCheckBox是多选按钮类,可多选。   点击领取Qt学习资料+视频教程~「链接」

朱小伟订婚,朱之文可以高枕无忧了?网友先别高兴太早就在前几天,农民歌手大衣哥的儿子朱小伟订婚了,才21岁就已经二婚,这既是不幸,也让还没有找到对象的同龄人汗颜。据说,朱小伟的订婚对象是同村的一位小学教师,长相也说得过去。消息传来,你不在,他爆发!两战40分28板,火箭交易大获成功,小伙低调崛起休斯顿火箭队现在基本锁定了联盟倒数前三的战绩排名,这个排名有利于火箭选秀大会抽中状元签。说一下规则,NBA现在乐透抽签,战绩倒数前三的球队抽中状元签的概率相同且最大(14概率)。火奥斯卡预测与看点本届最佳影片很可能来自流媒体奥斯卡预测与看点本届最佳影片很可能来自流媒体记者MaggieMa洛杉矶报道第94届奥斯卡颁奖典礼将在3月27日举行。前哨奖已全部颁出,最终小金人归属也更加清晰明朗了。目前冲刺在最佳收视第一,没想到,2022年童瑶再出王炸角色,这是要三度封神?心居开播不到一周,收视率冲第一!剧中有哪个角色最让你破防?是生活悲苦,行走在人生底层的施源冯晓琴?还是活得光鲜亮丽,处处高人一等的顾清俞?对于女人来说,大多都活成了冯晓琴,但心里最张翰新剧今晚开播,5位实力派加盟,凭3大看点,欲再掀热度狂潮说起抗战大剧观众应该都不陌生,2005年的一部亮剑在播出期间就掀起了一阵追剧热潮,后续更是演变成了内地影视中难以超越的经典,迄今仍在豆瓣上享有9。5分的佳绩。剧中的亮剑精神值得反复赵丽颖满血回归,10多年的龙套生涯,造就了今天的辉煌成就34岁的赵丽颖在产后复出就马不停蹄的出演了有翡谁是凶手,正在筹备的还有幸福到万家和你野蛮生长。赵丽颖从出演了花千骨之后就一直扶摇直上,人气也一直高居不下,从演完知否知否应是绿肥红瘦潘长江求放过年老无戏拍,手头紧!网友不买账,又在哭穷卖惨?我们暂时不去评论他的小品,且说老了没戏可拍,直播带货且坑人,这跟老了没戏可拍是两码事!这完全和他的人品和三观有联系。潘子在直播的路上,一发不可收拾。恐怕就算人神共愤,他也不会收手。tank,一个把自己的遗书唱出来的神人娱乐聚焦Tank,中文名吕建忠,擅长词曲创作吉他钢琴演奏编曲演唱以及舞蹈,拥有几近完美的演唱实力与丰富的舞台表演经验,歌曲创作的能力更让他备受唱片界瞩目,成为目前各大唱片公司各当红2022年家庭无线WIFI组网不要再问布什么线了,FTTR才是终极方案最近10年互联网的发展速度太快了,家庭宽带从10M到1000M,只不过用了短短几年的时间,我们家里曾经的网络布线,早已跟不上互联网的发展。而且随着互联网智能家居虚拟现实设备的发展,华为大动作,这次要用汉语编程近日,久久没有动静的鸿蒙,再次传来了一个大消息。华为宣布将发布为鸿蒙研发的编程语言仓颉,为整个鸿蒙生态补上最后一环。近日,一条华为自研编程语言仓颉试用报名开启的消息,引起不少程序员老美白忙活了!华为再次登顶全球第一,是爱立信和诺基亚之和这3年来,老美总是想尽一切办法针对华为,企图将华为5G技术排挤出国际市场,甚至要求各国一起拒绝华为的5G技术和通信设备。显然老美认为只有彻底打败华为,才能在全球获得5G技术的主导权
宁波今年工作划重点要超常规发展数字经济,实施民营经济新飞跃行动2022年12月18日,浙江宁波,舟山港穿山港区作业场景。(无人机拍摄)视觉中国图1月6日,万亿GDP城市宁波公布了2022年地区生产总值(GDP)等数据。据宁波发布消息,当日,宁苹果推出智能Ai语音读书功能丨高通宣布支持卫星通讯功能苹果推出智能读书功能苹果在今天宣布推出自带的AppleBooks数字旁白功能,该功能可以让出版商通过简单的功能来实现高质量的Ai读书音频。目前这个功能还不能通过用户手动启用,需要出苹果买下在ApplePark之前租用的库比蒂诺办公园区IT之家1月6日消息,就在苹果创始人史蒂夫乔布斯(SteveJobs)申请ApplePark的规划许可时,该公司租赁了更多办公空间。现在苹果最终完全买下了这些办公区域。2011年起手机快充大一统,中国人先走一步智东西作者云鹏编辑心缘苹果公司躺吃Lighting接口红利十年后,突然一个Deadline砸到了自己头上。年前,欧盟已经正式通过新规,以后手机想在欧盟范围内卖,就必须要用TypeC久易股份IPO信披不及时,数据算不准,还发生2人死亡的爆燃事故文观察者网邹煦晨从事农药生意的创业板IPO企业久易股份近年来风波不少。久易股份既有2人死亡,3人受伤的爆燃事故,又因信披被有关部门警告。并且,久易股份生产的产品还被写入宁波市农药质叮咚买菜股价两日反弹40,但生鲜电商仍未走出亏损困境自上市后持续下跌的叮咚买菜,近两日迎来股价反弹,达到自2022年2月以来的高点。1月5日至美股收盘,叮咚买菜当日股价上涨21。16至6。47美元。而在1月4日美股盘中,叮咚买菜涨幅金力股份闯关科创板,依赖前五大客户,综合毛利率波动大近日,河北金力新能源科技股份有限公司(以下简称金力股份)递交了首次公开发行股票并在科创板上市招股说明书(申报稿),保荐人为海通证券。金力股份是一家专注于锂电池湿法隔膜研发生产和销售特斯拉大降价,将会伤及多少利润?马斯克在近期表示,在经济衰退预期下,对于汽车价格和利润率的取舍为了保持需求不变,不得不因此降低汽车的价格。若想增加需求,那必须进一步降低汽车的价格。很快,在马斯克说完这句话的一周后年底结汇迎高峰,人民币持续升值外贸如何求稳?7。3的时候会计说等等,结果一等就错过了。上海四秀复合布有限公司负责人张复才告诉第一财经,他们错过了人民币对美元汇率跌至7。3的最佳时期,一不留神汇率就回升了。一般来说,他们会在美300122智飞生物重庆智飞生物制品股份有限公司2002年投入生物制品行业,注册资金16亿元,2022年上半年实现营业收入183。54亿元,现有资产346。81亿元,智飞员工5077人,是第一家在创业多维度提供精准服务北京海关为企业发展添动能来源人民网原创稿人民网北京1月6日电(记者栗翘楚)您好,我们公司刚刚投产,现在着急要从多个口岸进口大量生产设备,还不能在口岸开箱查验,请问我们该怎么办?2022年12月初,北京海关