当前位置: 首页 > news >正文

QT C++ 学习

经过一段时间对Adnroid的学习,基本掌握和了解了,现在又得要学习QT了,这是一个跨平台的开发工具,是NoKIA推出的,做为NOKIA开发平台的工具,使用的是C++语言在开发,以后要做移动开发的话,肯定不能光是Android了,所以个人感觉这个工具还是要学习一下的,今天就开始学习了,目前是以Android开发工具的学习和使用为主,这个为辅进行的学习,顺便也复习一下C++,虽说以前的时候也用过C++,可是好长时间不使用了,忘记了不少了,今天使用QT写了第一个测试小程序,下面把主要的代码发上来,让大家学习一个,其实就是一个简单的类。是看了一下书,然后自己边想边写的。

实例如下:

代码-头文件

   
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include
" QWidget "
#include
" QPushButton "
#include
" QLCDNumber "
#include
" QSplitter "
#include
< QSlider >

class MyWidget : public QWidget
{
public :
MyWidget(QWidget
* parent = 0 );
~ MyWidget();
private :
QPushButton
* button;
QLCDNumber
* lcdnumber;
QSplitter
* splitter;
QSlider
* slider;

};

#endif // MYWIDGET_H

 

代码-类的实现

   
#include " mywidget.h "
#include
< QPushButton >
#include
< QTextCodec >
#include
< QFont >

MyWidget::MyWidget(QWidget
* parent):QWidget(parent)
{

setMinimumSize(
200 , 120 );
setMaximumSize(
400 , 240 );

QTextCodec::setCodecForTr(QTextCodec::codecForName(
" gbk " ));

button
= new QPushButton(tr( " 退出(&Q) " ), this );
QFont font(
" Times " , 12 ,QFont::Normal,FALSE);
button
-> setGeometry( 0 , 0 , 75 , 30 );
button
-> setFont(font);


lcdnumber
= new QLCDNumber( 4 , this );
lcdnumber
-> setGeometry( 60 , 60 , 50 , 30 );
lcdnumber
-> setFont(QFont( " 宋体 " , 18 ,QFont::Bold, false ));

// 使用调色板

QPalette lcdp
= lcdnumber -> palette();
lcdp.setColor(QPalette::Normal,QPalette::WindowText,Qt::green);
lcdnumber
-> setPalette(lcdp);
lcdnumber
-> display( 1203 );


slider
= new QSlider(Qt::Horizontal, this );
slider
-> setRange( 10 , 200 );
slider
-> setGeometry( 10 , 40 , 100 , 10 );

connect(slider,SIGNAL(valueChanged(
int )),lcdnumber,SLOT(display( int )));

setWindowTitle(tr(
" 第一个程序 " ));
connect(button,SIGNAL(clicked()),
this ,SLOT(close()) );
}
MyWidget::
~ MyWidget()
{
delete(button);
delete(slider);
delete(lcdnumber);
}

 

代码-类的调用

   
#include < qapplication.h >
#include
< qpushbutton.h >
#include
< qfont.h >
#include
< mywidget.h >

int main( int argc, char ** argv)
{
QApplication a(argc,argv);

MyWidget
* mw = new MyWidget;
mw
-> setGeometry( 500 , 500 , 200 , 120 );
mw
-> show();

return a.exec();
}

 

刚开始写的时候,特别的不习惯,不知道什么叫信号与槽,后来经过向小程学习,逐渐明白了,并且能顺利使用了,下一节把那个例子发上来,因为回家的时候忘记带了,因此把这个做为开始内容了。

 

转载于:https://www.cnblogs.com/fly_binbin/archive/2010/12/16/1908643.html

相关文章:

  • 理解相机的相关参数的设置
  • 带参数的main函数
  • 基本文章
  • 使用sharppcap抓数据包
  • SOA
  • Mac OS 10.6.5上如何默认启动mysq服务
  • fedora linux 下安装pwntcha[验证码开源]
  • 初识 统一建模语言(UML)
  • OllyDBG 1.10汉化第二版
  • Eclipse Android配置
  • asp.net与Discuz-UCenter整合(3):UCenter与应用同步
  • css中的相对定位和绝对定位
  • cvs svnmanager
  • TMS3705 射频识别技术软硬件系统研制 - 安防,免费资源,弱电技术,安防技术,智能化,金辉,金辉安防同盟,安全防范,电子技术,监控技术,摄像机...
  • vs2010 aspx页面创建控件时出错 未将对象引用设置到对象的实例 解决方法
  • 收藏网友的 源程序下载网
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 30秒的PHP代码片段(1)数组 - Array
  • Android Studio:GIT提交项目到远程仓库
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • Centos6.8 使用rpm安装mysql5.7
  • Hexo+码云+git快速搭建免费的静态Blog
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • Less 日常用法
  • Lucene解析 - 基本概念
  • Python打包系统简单入门
  • SpiderData 2019年2月16日 DApp数据排行榜
  • spring security oauth2 password授权模式
  • Vue 重置组件到初始状态
  • 浮动相关
  • 给第三方使用接口的 URL 签名实现
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 简单基于spring的redis配置(单机和集群模式)
  • 入门级的git使用指北
  • 微服务入门【系列视频课程】
  • 携程小程序初体验
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 栈实现走出迷宫(C++)
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (力扣)循环队列的实现与详解(C语言)
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)Oracle存储过程编写经验和优化措施
  • (转)平衡树
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • @param注解什么意思_9000字,通俗易懂的讲解下Java注解
  • [].shift.call( arguments ) 和 [].slice.call( arguments )
  • [Android] 修改设备访问权限