QT开发笔记

转载 2016年08月31日 11:09:11

1.显示中文

#include <QTextCodec>

main函数中加

 QTextCodec *texcCode;
 texcCode=QTextCodec::codecForName("GB18030");
 QTextCodec::setCodecForCStrings(texcCode);
 QTextCodec::setCodecForTr(texcCode);
 QTextCodec::setCodecForLocale(texcCode);

 

2.获得部件相对屏幕的绝对地址

部件->mapToGlobal(QPoint(0,0));

 

3.隐去窗口边框

构造函数中加Qt::FramelessWindowHint;如:

Dialog::Dialog(QWidget *parent) :
    QDialog(parent,Qt::FramelessWindowHint)

 

4.刷新界面

QCoreApplication::processEvents();

 

5.让窗口居中显示

在main函数w.show后加

w.move ((QApplication::desktop()->width() - w.width())/2,(QApplication::desktop()->height() -w.height())/2);

  全屏(w.showFullScreen();)

6.以16进制显示某数

例如:label.setText(QString::number(c , 16 ));

 

7.以密文显示

例如 :ui->pwdLineEdit->setEchoMode(QLineEdit::Password);

 

8.关于qDebug():

qDebug("%x",n);无法输出16进制,会是错误的数字。

要这样用

qDebug()<<hex<<253<<endl;

 

9.获取事件前后时间差

QDateTime now = QDateTime::currentDateTime();

事件...

QDateTime then = QDateTime::currentDateTime();

int i = now.secsTo(then);

 

10.超时控制

 QTime dieTime = QTime::currentTime().addSecs(time);
 while( QTime::currentTime() < dieTime )
 {

}

10.设置字体

setStyleSheet("color: rgb(255, 0, 255);font-size : 30px;");

 

11

void QT_vDisplay(int iLine, const char *pcFormat, ...)
{
 if(iLine <=0 )
  return;
 char buf[100];
 va_list  pArg;
 va_start(pArg,pcFormat);
 vsprintf(buf,pcFormat,pArg);
 w->ui.listWidget->item(iLine-1)->setText(buf);
 QCoreApplication::processEvents();
}

 

12在程序中调用另一个程序的方法


uchar execProcess(char* pucLoad)
{
 QProcess proc;

 if(pucLoad == NULL)
  return EM_ERRPARAM;
 char cLoadBuf[256];
 memset(cLoadBuf,0x00,sizeof(cLoadBuf));
 if(pucLoad[0] == '/' || pucLoad[0] == '.')
  sprintf(cLoadBuf,"%s",pucLoad);
 else
  sprintf(cLoadBuf,"./%s",pucLoad);

 proc.start(cLoadBuf);

 qDebug("开始启动进程\n");
 // 等待进程启动
 if (!proc.waitForStarted())
 {
  qDebug("启动失败\n");
  return EM_ERROR;
 }
 // 关闭写通道,因为没有向进程写数据,没用到
 proc.closeWriteChannel();


 // 用于保存进程的控制台输出
 QByteArray procOutput;
 // 等待进程结束
 while (false == proc.waitForFinished())
 {
  ;
 }

 qDebug("进程结束\n");
 return EM_SUCCESS;

}

举报

相关文章推荐

QT开发笔记

1、QGridLayout QGridLayout包含多个grid,它并没有要求其中的每个grid的size相同,通常情况下,每个grid的size是不同的。 对于成员函数addWidget(wi...

Qt开发笔记

1、QGridLayout QGridLayout包含多个grid,它并没有要求其中的每个grid的size相同,通常情况下,每个grid的size是不同的。 对于成员函数addWidget(wi...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

Qt开发笔记——动画

用Qt做一个update程序,界面上需要一个类似电子相册的控件用来循环播放图片: 1. Qt中的动画效果可以通过QPropertyAnimation类来实现,这个类通过设置动画作用的目标setTar...

Qt+opencv开发笔记(2)

第一步:opencv打开摄像头并显示到qt界面上; 关键代码:CvCapture *m_camera; //视频获取结构 作为视频获取函数的返回值 IplImage *m_im...

个人开发笔记整理

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

开发遇到的...

开发遇到易忘点

小知识,随手一记

1.进入相机或者相册页面,想要使里面的使用,拍照变成中文:Localized resouces can be mixed = yes;   在info.plist里添加。 2.sendSubviewT...

Kinect for Windows SDK v2.0 开发笔记 (七)语音识别(上)

(转载请注明出处) 使用SDK: Kinect for Windows SDK v2.0 public preview
  • dustpg
  • dustpg
  • 2014-07-27 16:29
  • 3680

IOS开发笔记4-流程控制/基本语句

1、关系运算符和关系表达式语言? 关系运算符:用来比较两个表达式(数据)之间的大小关系,C语言中的关系运算符有 > 、>=、 关系表达式:由关系运算符连接起来的式子,就叫做关系...

Android开发笔记(成长轨迹)

1.控制台输出:called unimplemented OpenGL ES API 调用了未实现的OpenGL ES API函数,一般由于导入的第三方库如地图库,里面有用到OpenGL,但是模拟器...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)