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 ...
随机推荐
- Raspberry PI Model B+ (LCD显示CPU温度)
Title:Raspberry PI Model B+ (LCD显示CPU温度) --2015-01-29 17:44 买了块连接Raspberry PI Model B+的LCD显示器,上面没写C ...
- javascript book
我们很欣喜地看到,在设计模式领域,<JavaScript设计模式>(JavaScript Design Patterns)和<JavaScript编程模式>(JavaScrip ...
- 在 Windows 下远程桌面连接 Linux - XManager 篇
XManager是一个简单易用的高性能的运行在Windows平台上的X-Server软件,而Gnome和KDE就是X-Client,Linux下的X-Server则为Xorg.它能把远端Unix/Li ...
- 自己动手学TCP/IP–http协议(http报文头)
在前面的一篇文章中,简单了介绍了HTTP报文格式,详情参考http://www.firefoxbug.net/?cat=47. 这里大概介绍下基本的,常见的HTTP包头格式. POST /report ...
- C# 多线程经典示例 吃苹果
本文主要讲述了多线程开发中经典示例,通过本示例,可以加深对多线程的理解. 示例概述: 下面用一个模拟吃苹果的实例,说明C#中多线程的实现方法.要求开发一个程序实现如下情况:一个家庭有三个孩子,爸爸妈妈 ...
- DataTable与Linq相互转换
DataTable通过dt.AsEnumerable()方法转换可用Linq查询,反之,Linq也可以转化为DataTableDataTable newDt = query1.CopyToDataTa ...
- 【Html 学习笔记】第三节——超链接
这一节看看超级链接的应用 普通超链接:<a href=""> <a> 第一个由于环境目前无法尝试,第二个点击后跳转到qq主页. 图片超链接:<imag ...
- Thrift初探:简单实现C#通讯服务程序
Thrift是一种可伸缩的跨语言服务框架,它结合了功能强大的软件堆栈的代码生成引擎,以建设服务,工作效率和无缝地与C++,C#,Java,Python和PHP和Ruby结合.thrift允许你定义一个 ...
- Jenkins+maven+git+sonar 系统持续集成&代码单測管理
Jenkins+maven+git+sonar 系统持续集成&代码单測管理 Jenkins的安装 Jenkins是基于Java开发的一种持续集成工具,用于监控持续反复的工作.功能包含: 1.持 ...
- myeclipse 于 否update software 解
In some situations you may not be able to install or update software using the menu commands in the ...