qtday01 ubuntu 下手动编写第一个qt程序
2023-09-27 14:29:33 时间
QApplication app(argc,argv);
QTextCodec* coder=QTextCodec::codecForName("utf-8");
/*设置编码对象*/
// QTextCodec::setCodecForTr(coder);
//set code to the words
//QLabel qlab(QObject::tr("hello qt你好 ,today is a nice day!"));
QLabel qlab(coder- toUnicode("hello qt你好 ,today is a nice day!"));
qlab.show();
/*让程序进入事件循环*/
return app.exec();
}
//在1t目录下,输入命令:
//qmake -project --生成 .pro文件
//vi 1t.pro 在最后加一行 QT+=widget
//qmake --生成Makefile文件
//make --执行Makefile文件,生成最终可执行文件
//./1t --运行程序
//在2t目录下
//2t.cpp
#include QApplication
#include QtWidgets/QLabel
#include QtWidgets/QPushButton //按钮
#include QWidget //窗口对象
#include QObject
#include QSlider
#include QSpinBox
int main(int argc,char* argv[])
{
QApplication app(argc,argv);
/*堆空间,创建窗口*/
QWidget * parent=new QWidget();
parent- resize(400,300);//设置窗口大小
//
QSlider * qsli;
QSpinBox* qspin;
qsli=new QSlider(parent);
qspin=new QSpinBox(parent);
qsli- move(0,20);
qsli- resize(20,150);
qspin- move(40,20);
/*标签*/
QLabel qlab("second label",parent);
//qlab.show();
/*按钮*/
QPushButton qb1("close win",parent);
qb1.resize(80,20);
qb1.move(160,180);//设置按钮位置(居左上角)
QPushButton qb("close label",parent);
qb.resize(80,20);
qb.move(160,160);//设置按钮位置(居左上角)
/*信号函数(SIGNAL()转换)*/
/*槽函数(SLOT()转换), 槽函数可当做成员函数用*/
qspin- setValue(10);
/*按钮的clicked()函数触发标签的close()事件,关闭label*/
QObject::connect( qb,SIGNAL(clicked()), qlab,SLOT(close()));
QObject::connect( qb1,SIGNAL(clicked()), app,SLOT(quit()));
QObject::connect(qsli,SIGNAL(sliderMoved(int)),qspin,SLOT(setValue(int)));
//关闭整个程序
//QObject::connect( qb,SIGNAL(clicked()), app,SLOT(quit()));
//qb.show();
parent- show();
app.exec();
}
麒麟系统开发笔记(八):在国产麒麟系统上使用linuxdeployqt发布qt程序 在ubuntu上发布qt程序相对还好,使用脚本,但是在麒麟上发布的时候,因为银河麒麟等不同版本,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。
QTextCodec* coder=QTextCodec::codecForName("utf-8");
/*设置编码对象*/
// QTextCodec::setCodecForTr(coder);
//set code to the words
//QLabel qlab(QObject::tr("hello qt你好 ,today is a nice day!"));
QLabel qlab(coder- toUnicode("hello qt你好 ,today is a nice day!"));
qlab.show();
/*让程序进入事件循环*/
return app.exec();
}
//在1t目录下,输入命令:
//qmake -project --生成 .pro文件
//vi 1t.pro 在最后加一行 QT+=widget
//qmake --生成Makefile文件
//make --执行Makefile文件,生成最终可执行文件
//./1t --运行程序
//在2t目录下
//2t.cpp
#include QApplication
#include QtWidgets/QLabel
#include QtWidgets/QPushButton //按钮
#include QWidget //窗口对象
#include QObject
#include QSlider
#include QSpinBox
int main(int argc,char* argv[])
{
QApplication app(argc,argv);
/*堆空间,创建窗口*/
QWidget * parent=new QWidget();
parent- resize(400,300);//设置窗口大小
//
QSlider * qsli;
QSpinBox* qspin;
qsli=new QSlider(parent);
qspin=new QSpinBox(parent);
qsli- move(0,20);
qsli- resize(20,150);
qspin- move(40,20);
/*标签*/
QLabel qlab("second label",parent);
//qlab.show();
/*按钮*/
QPushButton qb1("close win",parent);
qb1.resize(80,20);
qb1.move(160,180);//设置按钮位置(居左上角)
QPushButton qb("close label",parent);
qb.resize(80,20);
qb.move(160,160);//设置按钮位置(居左上角)
/*信号函数(SIGNAL()转换)*/
/*槽函数(SLOT()转换), 槽函数可当做成员函数用*/
qspin- setValue(10);
/*按钮的clicked()函数触发标签的close()事件,关闭label*/
QObject::connect( qb,SIGNAL(clicked()), qlab,SLOT(close()));
QObject::connect( qb1,SIGNAL(clicked()), app,SLOT(quit()));
QObject::connect(qsli,SIGNAL(sliderMoved(int)),qspin,SLOT(setValue(int)));
//关闭整个程序
//QObject::connect( qb,SIGNAL(clicked()), app,SLOT(quit()));
//qb.show();
parent- show();
app.exec();
}
//与1t执行方法一样
麒麟系统开发笔记(八):在国产麒麟系统上使用linuxdeployqt发布qt程序 在ubuntu上发布qt程序相对还好,使用脚本,但是在麒麟上发布的时候,因为银河麒麟等不同版本,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。
相关文章
- 【Qt开发】几个傻不拉几关于char*和const char*的不兼容问题
- 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容
- 【Qt开发】如何将内存图像数据封装成QImage V1
- 【Qt开发】解决Qt程序在Linux下无法输入中文的办法
- Qt开发问答
- Qt在表格中加入控件
- 【QT】QT样式表语法
- Qt 学习笔记 TreeWidget 增删改
- PyQt(Python+Qt)学习随笔:QMainWindow的tabifyDockWidget方法将QDockWidget两个停靠窗选项卡式排列
- PyQt(Python+Qt)学习随笔:QListWidget获取当前选中项的selectedItems方法
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的mouseTracking和tabletTracking属性
- 让Qt for Windows Phone 8.1在真机上执行
- QT中使用Event Filter监听button事件,Release后button不见
- Qt快速入门学习笔记(基础篇)
- 30.qt quick-使用qmlRegisterSingletonType注册单例类给QML使用
- QT for Android 安卓报错 -LC++