QT学习:入门篇(三)
头文件:
#ifndef CChatDisplaySet_h
#define CChatDisplaySet_h
#include "QtGui/QDialog"
#include "ui_CChatDisplaySet.h"
#include "QtGui/QStandardItemModel"
#include <QStandardItem>
#include <QComboBox>
#include <QTreeView>
#include <QPushButton>
#include <QLabel>
class CChatDisplaySet : public QDialog
{
Q_OBJECT
public:
CChatDisplaySet(QWidget *parent = 0, Qt::WFlags flags = 0);
~CChatDisplaySet();
private:
void initLayout();
public:
private:
Ui::CChatDisplaySet ui;
//QList<QStandardItem *> items;
QStandardItemModel* Chat_Model;
QTreeView* m_pChatTreeView;
private slots:
void OnOk();
void OnCancel();
};
#endif //CChatDisplaySet_h
源文件
#include "CChatDisplaySet.h"
#include "QtGui/QGridLayout"
CChatDisplaySet::CChatDisplaySet(QWidget *parent, Qt::WFlags flags)
:QDialog(parent, flags)
{
ui.setupUi(this);
m_pChatTreeView = ui.treeView;
setWindowTitle(tr("图表显示设置"));
setFixedSize(550, 580);
initLayout();
}
CChatDisplaySet::~CChatDisplaySet()
{
}
void CChatDisplaySet::initLayout()
{
ui.lblColor->setText(tr("显示颜色"));
ui.cmbColor->insertItem(1, tr("订单的显示颜色"));
ui.btnOk->setText(tr("确定"));
ui.btnCancel->setText(tr("取消"));
connect(ui.btnOk, SIGNAL(clicked()), this, SLOT(OnOk));
connect(ui.btnCancel, SIGNAL(clicked()), this, SLOT(OnCancel));
Chat_Model = new QStandardItemModel(this);
QStringList header;
header << "设置";
Chat_Model->setHorizontalHeaderLabels(header);
QStandardItem* item1 = new QStandardItem("订单甘特图");
QStandardItem* item2 = new QStandardItem("图表全体");
QStandardItem* element1 = new QStandardItem("显示字符串");
QStandardItem* element2 = new QStandardItem("显示");
QStandardItem* element3 = new QStandardItem("工作显示颜色");
QStandardItem* element4 = new QStandardItem("订单显示系统");
QStandardItem* element5 = new QStandardItem("行显示");
QStandardItem* num1 = new QStandardItem("显示");
QStandardItem* num2 = new QStandardItem("操作");
QStandardItem* num3 = new QStandardItem("行构成");
QStandardItem* num4 = new QStandardItem("打印");
QStandardItem* num5 = new QStandardItem("打印字符串");
item1->appendRow(element1);
item1->appendRow(element2);
item1->appendRow(element3);
item1->appendRow(element4);
item1->appendRow(element5);
Chat_Model->appendRow(item1);
item2->appendRow(num1);
item2->appendRow(num2);
item2->appendRow(num3);
item2->appendRow(num4);
item2->appendRow(num5);
Chat_Model->appendRow(item2);
ui.treeView->setModel(Chat_Model);
}
void CChatDisplaySet::OnOk()
{
this->accept();
}
void CChatDisplaySet::OnCancel()
{
this->reject();
}
主函数
#include "CChatDisplaySet.h"
#include "chatdisplay.h"
#include <QtGui/QApplication>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
/*ChatDisplay w;
w.show();*/
//设置编码格式
QTextCodec::setCodecForTr(QTextCodec::codecForName("System"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("System"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
CChatDisplaySet chatdisplay;
chatdisplay.exec();
return a.exec();
}
运行结果展示:

QT学习:入门篇(三)的更多相关文章
- 【SSRS】入门篇(三) -- 为报表定义数据集
原文:[SSRS]入门篇(三) -- 为报表定义数据集 通过前两篇文件 [SSRS]入门篇(一) -- 创建SSRS项目 和 [SSRS]入门篇(二) -- 建立数据源 后, 我们建立了一个SSRS项 ...
- sass学习入门篇(三)
这章我们讲“嵌套”,嵌套包括两种:一,选择器嵌套.二是属性的嵌套.一般用选择器嵌套居多 一,选择器嵌套:指的是在一个选择器中嵌套另一个选择器来实现继承.使用&表示父元素选择器 li{ floa ...
- Android攻城狮学习笔记—入门篇三
第十章 CheckBox 与其他控件类似 有自己的监听方法 实现监听 并定义被选中或取消后的操作 第十一章 RadioGroup和RadioButton RadioGroup是RadioButton的 ...
- Python学习 - 入门篇1
前言 学习渠道:慕课网:Python入门 记录原因:人总归要向记忆低头[微笑再见.gif] 记录目标:形成简洁的知识点查阅手册 变量和数据类型 变量 赋值 在Python中,可以把任意数据类型赋值给变 ...
- TensorFlow学习——入门篇
本文主要通过一个简单的 Demo 介绍 TensorFlow 初级 API 的使用方法,因为自己也是初学者,因此本文的目的主要是引导刚接触 TensorFlow 或者 机器学习的同学,能够从第一步开始 ...
- JDK源码学习--String篇(三) 存储篇
在进一步解读String类时,先了解下内存分配和数据存储的. 数据存储 1.寄存器:最快的存储区,位于处理器的内部.由于寄存器的数量有限,所以寄存器是按需分配. 2.堆栈:位于RAM中,但是通过堆栈指 ...
- QT. 学习之路 三
添加一个动作: Qt 使用QAction类作为动作.QAction包含了图标.菜单文字.快捷键.状态栏文字.浮动帮助等信息.当把一个QAction对象添加到程序中时,Qt 自己选择使用哪个属性来显示, ...
- Qt学习日记篇-Qt中使用Curl和jsonCpp
1.Qt中安装并使用jsonCPP库 1.1 官网下载.https://sourceforge.net/projects/jsoncpp/ 解压文件得到 jsoncpp-src-0.5.0 文 ...
- QT学习日记篇-03-仿写一个智能家居界面
课程大纲: <1>让界面漂亮起来,仿写一个智能家居界面 ->第一:给QT工程添加图片 进入下一步: <注意路径和名称一定不能有中文> ...
- QT学习入门笔记
系统路径 path 添加dll路径,如D:\QT\5.4\mingw491_32. .pro 文件添加 QT += widgets,否则出现qapplication no such file or ...
随机推荐
- mac 下 配置 阿帕奇
1.从 tomcat 官网(http://tomcat.apache.org/download-90.cgi)下载 完整的 tomcat包. 2.将红框中的包下载完,然后解压到任意一个目录,将其命名为 ...
- HTTP 代理原理及实现
本文转载自 https://imququ.com/post/web-proxy.html HTTP 代理原理及实现(一) 文章目录 普通代理 隧道代理 Web 代理是一种存在于网络中间的实体,提供各式 ...
- 『在线工具』 基于 xsser.me 源码 + BootStrap 前端 的 XSS 平台
乌云社区上一个小伙伴的对xsser.me 的源码做了 BS 的优化,本人已经搭建好,提供给大家免费使用,大牛求绕过,多谢. 地址: http://xss.evilclay.com (目前开放注册,不需 ...
- angular2 学习笔记 ( DI 依赖注入 )
refer : http://blog.thoughtram.io/angular/2016/09/15/angular-2-final-is-out.html ( search Dependency ...
- OSSEC
[科普]入侵检测系统ossec配置文件详解 http://www.freebuf.com/articles/system/11862.html http://www.freebuf.com/autho ...
- Spring boot将配置属性注入到bean类中
一.@ConfigurationProperties注解的使用 看配置文件,我的是yaml格式的配置: // file application.yml my: servers: - dev.bar.c ...
- 矢量做图组件OTGisX的使用(类似Mapbase)
一:组件添加到工具栏 要在应用程序中应用OTGisX控件,首先要把所下载的OTGisX组件添加到.Net工程中.并将其添加到工具箱托盘中.添加方式为:在工具箱上单击右键,选择“选择项”,会出现“选择工 ...
- LeetCode——Pascal's Triangle
Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5,Retur ...
- [LeetCode] 347. Top K Frequent Elements 解题思路 - Java
Given a non-empty array of integers, return the k most frequent elements. For example,Given [1,1,1,2 ...
- libvirt之virt-install
在使用kvm命令建立虚拟机时每次都要输入很长的命令,容易出现输入错误,可以使用libvirt管理虚拟机,libvirt支持kvm,xen等主流虚拟机的管理,下面介绍一下利用libvirt管理虚拟机. ...