布局
1. 表单布局管理器 用来管理 表格的输入部件及相关标签。如图 表单属性设置
表单布局管理器的使用 : 双击表单->弹出对话框 -->填写标签 "学号&P" 选择对应的QLineEdit 就自动 label 何lineEdit 绑定成为了伙伴关系 这样就增加了 alt+P的快捷键
在布局管理器 中 lable1 输入 “姓名(&N)” lbel2 输入性别(&S) 这样就可以按下alt+N alt+S 加速器 来选择对应的输入框。
2. 显示或者隐藏可扩展窗口。 如上图 在Qt designer 上 设置checkable 属性 为选中,
// 显隐窗口按钮
void MyWidget::on_pushButton_toggled(bool checked)
{
// 设置文本编辑器的显示和隐藏 ui->textEdit->setVisible(checked);
if(checked) ui->pushButton->setText(tr("隐藏可扩展窗口"));
else ui->pushButton->setText(tr("显示可扩展窗口"));
}
3. 分裂器 Qsplitter 继承自Aframe 类 QBoxlayout 继承自Qobject
4. 设置伙伴关系 比如 label 和 lineEdit label 输入"学号&C" 然后点击
这个按钮 , 从label 连线到lineEdit 就完成了伙伴的设置关系
5. 设置tab 顺序 点击上方 tab按钮就可以设置。
第5章应用程序主窗口 :
MainWindow 包含: 菜单栏 QMenuBar 工具栏ToolBar 中心部件 CenterWidger Dock部件 DockWidget 状态栏 statusBar
悬浮部件: DockWidget 一般用作工具箱等。如上图 ui->dockWidget->show() 上图的部件有 DockWidget FontComBox ToolBar
ui->statusBar->showMessage(tr("欢迎使用多文档编辑器"),2000);
自定义菜单 : 也可以 继承 QWidgetAction 类
MyAction::MyAction(QObject *parent) : QWidgetAction(parent){ // 创建行编辑器 lineEdit = new QLineEdit; // 将行编辑器的按下回车键信号与我们的发送文本槽关联 connect(lineEdit,SIGNAL(returnPressed()),this,SLOT(sendText())); }
5.1.1 富文本处理
QTextEdit 支持富文本处理 。 文档的光标 基于QTextCursor 类 框架基于 TextDocument类
textEdit 中可以插入图片表格 列表 语法高亮 查找等。
工具栏的使用 : 运行图 和 QT 设计师图
如上图 QT设计师里面只是增加了一个QtextEdit
代码操作:
QAction *action_textFrame = new QAction(tr("框架"),this); // 在工具栏添加动作 ui->mainToolBar->addAction(action_textFrame); QAction *action_textBlock = new QAction(tr("文本块"),this); ui->mainToolBar->addAction(action_textBlock);
5.2 拖放操作。
5.2.1 使用拖放打开文件
把一个文件拖到TextEdit 自动打开文件并读取里面内容 对下面两个事件处理 QMimeData类
void dragEnterEvent(QDragEnterEvent *event); //拖动进入事件 void dropEvent(QDropEvent *event); //放下事件
自定义拖动,就是窗口中有一个图片,可以随意拖动。