QT布局管理程序实现的学习及 QTextEdit编辑
来源:互联网 发布:快易数据恢复可靠吗 编辑:程序博客网 时间:2024/06/01 07:52
QT布局管理程序实现的学习
1. qt 中对控件布局可以使用水平、垂直和Grid布局管理器来进行
QHBoxLayout:水平排列控件。
QVBoxLayout:垂直排列控件。
QGridLayout:按矩阵方式排列控件。
水平布局管理器可以把它所管理的部件以水平的顺序依次排开。垂直管理器类似,它可以把它所管理的部件以垂直的顺序依次排开。Grid布局管理器可以以网格的形式,将它所管理的部件以一定的矩阵形式排列.
2.在QT assistant 中查找QHBoxLayout,可以看到,应用布局的关键在于QBoxLayout的addWidget()函数,和QWidget的setLayout()函数,如果有多个Widget时,需要多层次的布局,此时还会用到addlayout()和addStretch()函数
对于何时用addlayout()和addStretch()以及怎么用的问题,看地址簿例子就会明白
在多层次布局时,用addlayout()可以向主布局添加子布局
而使用addStretch(),可以使布局中的widget之间添加延伸空间,默认值0表示widget之间没有延伸(因为我们默认的布局对齐方式为Qt::Alignment alignment = 0,它的含义是widget会填充整个cell,这样会使布局的widget之间有空间,使用addstretch()可以消除这种空间)
看qt学习之路(8)中对addstretch()的含义的解释。
要掌握这个内容,实现QT学习之路(7)的例子。
3. 关于QGridLayout,关键是要理解其中函数addwidget()中各个参数的含义
void QGridLayout::addWidget ( QWidget * widget, int row, int column, Qt::Alignment alignment = 0 )
void QGridLayout::addWidget ( QWidget * widget, int fromRow, int fromColumn, int rowSpan, int columnSpan,Qt::Alignment alignment = 0 )
第一个的布局的参数的意思依次为:QGridLayoutName,行号,列号。
第二个的布局的参数的意思依次为:QGridLayoutName,行号,列号,行宽,列宽。
QT学习之路(7)中例子用QGridLayout来实现的源代码:
QGridLayout *mainLayout = new QGridLayout;
mainLayout->addWidget(m_pLabel,0,0,1,1);
mainLayout->addWidget(m_pLineEdit,0,1,1,1);
mainLayout->addWidget(m_pFindPushBtn,0,2,1,1);
mainLayout->addWidget(m_pMatchCaseCheckBx,1,0,1,1);
mainLayout->addWidget(m_pClosePushBtn,1,2,1,1);
mainLayout->addWidget(m_pSearchBackCheckBx,3,0,1,1);
this->setLayout(mainLayout);
4、用QT Designer中的布局管理器时,可以把该控件和窗口选中,选择layout in a Grid,从而可以使控件随窗口的大小而改变。
5.地址簿的例子:QGridLayout为主布局,结合QVBoxLayout和QHBoxLayout子布局
值得学习。
环境Qt4.7,ui是我的界面类
1、向QTextEdit中当前光标位置添加一行字符串message
ui.messageTextEdit->textCursor().insertText(message+"\n");
2、向QTextEdit中末尾追加一行字符串message
QString content = ui.contentTextEdit->append(message+"\n");
3、读取QTextEdit的值
QString content = ui.contentTextEdit->toPlainText();
4、光标移到末尾
ui.textBrowser_2->moveCursor(QTextCursor::End);
- QT布局管理程序实现的学习及 QTextEdit编辑
- QT布局管理程序实现的学习
- QT QTextedit 学习笔记
- QTextEdit 控件的学习
- 电网QT项目|QT的QTextEdit
- Qt学习之路之 QTextEdit 重温
- Qt学习笔记之QTextEdit 、QPlainTextEdit
- 软件的安装及管理程序
- Qt中如何实现QTextEdit中文字的单个删除 和 连续删除
- QT 类及其实现效果(5)--QTextEdit排版
- Qt使用QTextEdit进行文本编辑实现查找高亮
- Qt软件开发文档15---聊天窗口的实现(2),QTextEdit+QPainter实现聊天框自适应大小
- Qt之QTextEdit
- QT QTextEdit中超链接
- QTextEdit行数的获得_关于QT开发
- Qt设置QTextEdit和QLabel的字体颜色
- Qt 对QTextEdit的文本编辑器进行查找操作
- qt Qtextedit中获取中文为转换char的方法
- hibernate 数据库类型 date没有时分秒解决
- DevSuite产品实现敏捷测试 ( QA Test Co-owner Event)
- C语言位运算符
- 布局时候出现的一个小错误
- ThinkPad t430不能进入BIOS
- QT布局管理程序实现的学习及 QTextEdit编辑
- java反射机制学习
- 在ubuntu12.04上编译并安装kernel2.6.39.4
- storm安装部署
- 基于物品的协同过滤推荐算法——读“Item-Based Collaborative Filtering Recommendation Algorithms” .
- Visual Studio下使用jQuery的10个技巧
- Java Big Endian&Little Endian
- css3的background-clip来制作半透明边框
- 工厂模式