• Qt Everything


    这篇文章属于一个系列,主要是我收集于网络的各种Qt方面技巧,不断更新!!

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

    用qt4.6写个串口应用程序,串口的操作直接调用windows api来进行,却发现一个问题,那就是如果我用creatfile来创建串口文件,则始终返回失败,但我如用creatfileA来创建,则成功。查了一下资料,原来这是由于字符编码的问题引起的。QT系统用的是unicode编码,因此,调用creatfile时,实际调用的是creatfileW这个支持unicode的函数,但我用qt creator来编写程序时,所写程序的字符编码却是windows默认的gbk编码,因此,导致失败。解决方法是在qt creator中选择程序字符编码为utf-8,或者真接使用creatfileA这个函数。

    2、主窗体圆角

    QPixmap pixmap(directoryOf("Images").absoluteFilePath("xiangximenu.png"));

    setMask(pixmap.mask()); // 可以不使用转换的, 使用一张专门的bitmap图片.

    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

      #include <windows.h>

      ...

    #ifdef Q_WS_WIN //声明要使用windows API
        //HWND myhwnd=this->winId();
        //获得窗口句柄
        //::SendMessage(HWND_BROADCAST,   WM_SYSCOMMAND,   SC_MONITORPOWER,   2);
        //关闭显示器API
        //ExitWindowsEx(EWX_LOGOFF, 0);
        //注销用户API
    
    
        MessageBox(NULL,TEXT("This is windows window"),TEXT("HAHA YOYO"),MB_OK);
        //windows的messagebox,
        #endif              
  • 相关阅读:
    【Framework】HTTP运行期与页面执行模型
    【Framework】深入研究Asp.net页面的生命周期
    【WCF】Silverlight+wcf+自定义用户名密码验证
    【缓存】EF4ProviderWrappers
    【缓存】Sql Server 2005/2008 SqlCacheDependency查询通知的使用总结
    【缓存】利用Cache防止同一帐号重复登录
    【缓存】.net中Cache管理操作
    【缓存】系统缓存全解析 (上)
    【缓存】系统缓存全解析 (中)
    【缓存】系统缓存全解析 (下)
  • 原文地址:https://www.cnblogs.com/hicjiajia/p/1869280.html
Copyright © 2020-2023  润新知