关于QT应用中几个问题讨论

移动开发
本文介绍的是关于QT应用中几个问题讨论,也是我们平常所见的一些小应用,我们先来看内容。

QT一些应用使我们经常碰到的一些问题,在这里简单的罗列了一些内容,仅供参考,先来看内容。这篇文章属于一个系列,主要是我收集于网络的各种Qt方面技巧。

1、Qt串口应用程序小问题

Qt 4.6写个串口应用程序,串口的操作直接调用windows api来进行,却发现一个问题,那就是如果我用creatfile来创建串口文件,则始终返回失败,但我如用creatfileA来创建,则成功。

查了一下资料,原来这是由于字符编码的问题引起的。QT系统用的是unicode编码,因此,调用creatfile时,实际调用的是creatfileW这个支持unicode的函数,但我用qt creator来编写程序时,所写程序的字符编码却是windows默认的gbk编码,因此,导致失败。解决方法是在qt creator中选择程序字符编码为utf-8,或者真接使用creatfileA这个函数。

2、主窗体圆角

  1. QPixmap pixmap(directoryOf("Images").absoluteFilePath("xiangximenu.png"));   
  2. setMask(pixmap.mask()); // 可以不使用转换的, 使用一张专门的bitmap图片.  
  3. setWindowFlags(Qt::Window|Qt::FramelessWindowHint); 

只要让你的窗体执行了上面的代码就是几个角是圆角的,xiangximenu.png是一张圆角的图片

制作圆角图片大家可以访问这个网站: http://www.roundpic.com

解释:directory,只不过是为了解决平台兼容性的一段代码,所有的路径都是针对可执行文件的。

3、QML 官方教程

http://doc.qt.nokia.com/4.7-snapshot/qml-tutorial.html

4、Qt调用Win32 API

  1. #include <windows.h> 
  2.  
  3. ...  
  4.  
  5. #ifdef Q_WS_WIN //声明要使用windows API   
  6.     //HWND myhwnd=this->winId();      
  7.     //获得窗口句柄      
  8.     //::SendMessage(HWND_BROADCAST,   WM_SYSCOMMAND,   SC_MONITORPOWER,   2);      
  9.     //关闭显示器API      
  10.     //ExitWindowsEx(EWX_LOGOFF, 0);      
  11.     //注销用户API    MessageBox(NULL,TEXT("This is windows window"),TEXT("HAHA YOYO"),MB_OK);      
  12.     //windows的messagebox,      
  13.     #endif 

 

责任编辑:zhaolei 来源: 互联网
相关推荐

2021-03-03 21:24:57

数据仓库工具

2011-07-01 09:31:49

.net

2010-06-09 16:57:14

路由选择协议

2013-11-12 09:16:00

SDN思科Insieme

2023-07-04 08:09:05

数据库选型集中式

2021-10-12 00:04:24

脚本备份MariDB

2013-05-06 15:42:49

2009-01-07 18:02:36

服务器虚拟化数据中心

2010-07-12 13:00:49

UML建模

2011-09-14 15:23:00

Android 2.2

2009-09-07 14:39:14

2011-05-18 11:31:56

数据安全数据备份

2010-07-13 15:36:33

2021-01-19 08:25:20

Java反射进阶

2013-08-29 09:47:32

开源hypervisor

2009-11-06 14:07:58

Oracle用户表空间

2022-01-12 08:53:04

数字化疫情企业发展

2011-07-25 14:18:36

SQL Server数据挖掘

2011-07-25 16:13:34

SQL Server数据挖掘

2019-01-29 07:44:14

点赞
收藏

51CTO技术栈公众号