QT 常用控件一
QWidget 创建窗口
如果widget未使用腹肌进行创建,则在显示时视为窗口或顶层widget。
由于顶层widget没有父级对象类来确保在其不再使用时删除,所以需要开发人员在应用程序中对其进程跟踪。
在本例中,使用QWidget创建和显示具有默认大小的窗口
QWidget *win=new QWidget();
win->resize(,);
win_>show();
QPushButtopn *btn1=new QPushButton(tr("press me"),win);
btn1->move(,);
btn1->show();
QHBoxLayout
通常,子Widget是通过使用布局对象在窗口中进行排列的,而不是通过指定位置和大小进行排列的。再次,构造一个并排排列的标签和行编辑框Widgget:
QLabel *label1=new QLabel(tr("Name:"));
QLineEdit *edit1=new QLineEdit();
QHBoxLayout *layout1=new QHBoxLayout();
layout1->addWidget(label1);
layout1->addWidget(edit1);
window->setLayout(layout1);
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
edit1=new QLineEdit();
label1=new QLabel();
label1->setText("please print:");
/*QHBoxLayout横向添加控件,所有的控件都在一行上*/
QHBoxLayout *layout1=new QHBoxLayout();
layout1->addWidget(label1);
layout1->addWidget(edit1);
/*如果使用this作为初始化参数,则不需要使用setLayout()方法*/
this->setLayout(layout1);
}
QVBoxLayout
由于Widget可包含其他Widget,所以布局可用来提供按不同层次分组的Widget。
这里,要在显示查询结果的表视图上方,窗口顶部的行编辑框旁,显示一个标签:
QLabel *querylabel=new QLabel("Query:");
QLineEdit *queryedit=new QLineEdit();
QTableView *resview=new QTableView(); QHBoxLayout *querylayout=new QHBoxLayout();
querylayout->addWidget(querylabel);
querylayout->addWidget(queryedit); QVBoxLayout *mainlayout=new QVBoxLayout();
mainlayout->addWidget(querylayout);
mainlayout->addWidget(resview);
this->setLayout(mainlayout);
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
edit1=new QLineEdit();
edit2=new QLineEdit();
label1=new QLabel();
label1->setText("帐号:");
label2=new QLabel();
label2->setText("密码:");
btn1=new QPushButton();
btn1->setText("确定");
btn2=new QPushButton();
btn2->setText("取消");
/*QVBoxLayout纵向添加控件,所有的控件在一列上*/
QVBoxLayout *layout1=new QVBoxLayout(this);
QHBoxLayout *layout2=new QHBoxLayout();
layout1->addWidget(label1);
layout1->addWidget(edit1);
layout1->addWidget(label2);
layout1->addWidget(edit2);
layout2->addWidget(btn1);
layout2->addWidget(btn2);
/*将layout2加入到layout1中,不是用setLayout()*/
layout1->addLayout(layout2);
}

QT 常用控件一的更多相关文章
- Qt常用控件
Qt常用控件 QWidget与QFrame QWidget所有图形控件的基类 QFrame与QWidget的区别 QFrame是基本控件的基类, QWidget是QFrame的基类. 因此QFrame ...
- QT 常用控件二
QT提供QHBoxLayout类.QVBoxlayout类及QGridLayout类等的基本布局管理,分别是水平排列布局,垂直排列布局和网格排列布局 addWidget()方法用于向布局中加入需要布局 ...
- Qt——常用控件样式
下面是我设计.调整.修改的Qt控件样式,仅供参考. Github地址:https://github.com/ikongziming/QtDemo/tree/master/StyleSheetDemo ...
- QT常用控件(三)——自定义控件封装
引言 Qt已经提供了很多的基础控件供开发使用,而Qt原生的控件有时候并不能满足我们的需求,特别是在工业的运用上,比如我们需要一个日期时间的选择器,Qt虽然已经提供了原生的QDateTime控件,但这个 ...
- QT+常用控件_Line Edit
#include "mainwindow.h" #include "ui_mainwindow.h" #include <QDebug> #incl ...
- QT常用控件(一)——菜单栏和对话框
引言 QMainWindow 是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar).多个工具栏(tool bars).多个锚接部件(dock widgets).一个状态栏(status ...
- QT_7_资源文件_对话框_QMessageBox_界面布局_常用控件
资源文件 1.1. 将资源导入到项目下 1.2. 添加文件—>Qt -->Qt Resource File 1.3. 起名称 res ,生成res.qrc文件 1.4. 右键 open i ...
- android内部培训视频_第三节(3)_常用控件(ViewPager、日期时间相关、ListView)
第三节(2):常用控件之ViewPager.日期时间相关.ListView 一.ViewPager 实例:结合PagerAdapter滑动切换图片 二.日期时间相关:AnalogClock\Dig ...
- [WinForm]WinForm跨线程UI操作常用控件类大全
前言 在C#开发的WinForm窗体程序开发的时候,经常会使用多线程处理一些比较耗时之类的操作.不过会有一个问题:就是涉及到跨线程操作UI元素. 相信才开始接触的人一定会遇上这个问题. 为了解决这个问 ...
随机推荐
- iOS-字符属性NSAttributedString描述
/* 字符属性 字符属性可以应用于 attributed string 的文本中. NSString *const NSFontAttributeName;(字体) NSString *const N ...
- 关于JS变量提升的一些坑
function log(str) { // 本篇文章所有的打印都将调用此方法 console.log(str); } 函数声明和变量声明总是会被解释器悄悄地被“提升”到方法体的最顶部 变量声明.命名 ...
- ArrayList vs LinkedList vs Vector
List概览 List,正如它的名字,表明其是有顺序的.当讨论List的时候,最好拿它跟Set作比较,Set中的元素是无序且唯一:下面是一张类层次结构图,从这张图中,我们可以大致了解java集合类的整 ...
- java中实现定时功能
网上资料: 我们可以使用Timer和TimerTask类在java中实现定时任务,详细说明如下: 1.基础知识java.util.Timer一种线程设施,用于安排以后在后台线程中执行的任务.可安排任务 ...
- == 与 equals 区别
同: ==和equals都比较两个值是否相等.相等为true 否则为false: 异: 1. == 是一个运算符;equals则是string对象的方法,可以.(点)出来. ...
- 让UNION与ORDER BY并存于SQL语句当中
在SQL语句中,UNION关键字多用来将并列的多组查询结果(表)合并成一个结果(表),简单实例如下: SELECT [Id],[Name],[Comment] FROM [Product1] UNIO ...
- js 百度地图
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Swing应用开发实战系列之五:后台日志信息前台监控器
作为一个程序设计人员,我们深知日志的重要性,对于日志的监控,我们通常不外乎采用以下两种方式:日志文件方式和后台打印方式,常规情况下,这两种日志监控方式完全可以满足我们对日志监控的需要.但是,当我们用S ...
- Linux磁盘管理之日志文件系统和非日志文件系统08
略. 查看linux支持的文件系统命令: ls /lib/module/`uname -r`/x86/fs blkid查看文件系统的类型 mkfs.ext2 == mkfs –t ext2
- 《PHP开发APP接口》笔记
PHP开发APP接口 [TOC] 课程地址 imooc PHP开发APP接口 学习要点 APP接口简介 封装通信接口方法 核心技术 APP接口实例 服务器端 -> 数据库|缓存 -> 调用 ...