QT入门:怎么写无边框(标题栏)的窗口、透明窗口、圆角控件

QT入门:怎么写无边框(标题栏)的窗口、透明窗口、圆角控件

算法语言 3年前 (2014-12-26) 浏览: 5993 评论: 0

对于QT的初学者来说,去除边框,实现窗口透明度可能是美化GUI的基本要求,笔者综合了网上的代码,进行了总结: 无边框(标题栏)的窗口   setWindowOpacity(1)这一句代码实现窗口的透明效果,函数里面的参数是透明度,1表示不透明 setWindowFlags(Qt::FramelessWindowHint);隐藏窗口的标题栏和边框   背景刷成黑色,前景色设为白色。 方法一、paltette方式,经测试,该方法不会影响到其他控件,推荐使用     方法二、stylesheet方式 影响子控件的方法是:     不影响子控件的方法是:       圆角控件 用stylesheet方式       圆角窗口        半透明窗口   窗口整体透明,但是窗体上的控件不透明。 通过设置窗体的背景色来实现,将背景色设置为全透。 试验效果: 窗体标题栏不透明;   窗体客户区上的控件不透明,QLabel控件只是字显示,控件背景色透明; 窗体客户区完全透明。 另外从网上看到的方法: 试验的结果是类似于上面的方法,但有时候窗体会被一些杂色斑点填充,未找到原因。 窗口及其上面的控件都半透明:    试验效果:窗口及控件都半透明。注意不能够setWindowFlags(Qt::FramelessWindowHint);要不就不起作用   窗口整体不透明,局部透明:在Paint事件中使用Clear模式绘图。     试验效果:绘制区域全透明。如果绘制区域有控件不会影响控件。 以上实验均是基于Directfb的Qte测试。在Linux下及Windows下效果会略有不同。 比如在Windows下第3个实验,绘制区域就是一个黑窟窿,如果Window本身半透,则是Window下面的内容加上半透效果,不是全透明效果。     控制QPixmap的alpha        layout 的边界       以上代码来自互联网,经本人整理发布,后续笔者研究后发布拖动窗口代码  

Qt多窗口切换程序

Qt多窗口切换程序

算法语言 3年前 (2014-12-25) 浏览: 1678 评论: 0

 Qt多窗口切换程序 1.ui文件中布局 2.主要程序 main.cpp   主界面程序:mainwindow.h mainwindow.cpp     dialog1.cpp   dialog2.cpp与Dialog1相似 关键点: this->close(); dialog2.show(); dialog2.exec(); this->show();   通过等待dialog.exec()消息,判断主界面是否回显。 运行结果:

[转载]QT5.1_Windows 下的 安卓开发环境配置

[转载]QT5.1_Windows 下的 安卓开发环境配置

算法语言 3年前 (2014-12-22) 浏览: 155 评论: 2

本教程开发环境: win8 64 位,win7 ,xp 应该更没有问题,注意选择 32 位 ,64位的区分 1. 安装 Perl http://strawberryperl.com/     这步可能不是必须的,目前来说我是装上了的, 2.下载  MinGW-w64 http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/32-bit/threads-win32/dwarf/x32-4.8.1-release-win32-dwarf-rev1.7z/download 解压到指定目录,目录结构大概是这样 【D:mingw-buildsmingw32】,把【D:mingw-buildsmingw32bin】加入PATH 3.下载mingwbuilds MSYS and external binaries (for git)http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/msys+7za+wget+svn+git+mercurial+cvs-rev13.7z/download 解压到上述MinGW-w64的相关目录,目录结构大概是这样 【D:mingw-buildsmsys】 4.安装JDK7 把 【jdk17bin】的路径加入 PATH 5.去安卓官网 下载 SDK,我下载的是 附带ECLIPSE版的,然后下载NDK,解压到SDK的同级目录,保证NDK,SDK的文件夹同级,此时启动附带的Eclipse,应该可以进行安卓APP开发了。 这里注意下 SDKMANAGER.exe,去掉空格,WIN8设置成以管理员启动好像才跑的起来 6.配置以下环境变量: set “ANDROID_NDK_PLATFORM=android-9” set “ANDROID_TARGET_ARCH=armeabi-v7a” set “ANDROID_BUILD_TOOLS_REVISION=17.0.0” set “ANDROID_NDK_HOST=windows-x86_64” or set “ANDROID_NDK_HOST=windows” .. depending on which NDK you downloaded. 7.下载 QT5.1 for android ,并安装。 8.下载 ANT 9.配置QT CREATER 配置完后,应该就可以用AVD管理器新建模拟器,然后新建项目,编译时注意注意选成android端的。 此时走构建项目,make,部署,如果一切顺利的话,应该就可以跑了,我用9300测试成功。 目前新建里面的,移动QT应用目视不能按上述流程走。 另,可能在此时无法新建AVD,我的机器是重启之后才好用的 声明 本文转自http://my.oschina.net/stardriver/blog/142923

QT中怎样修改系统时间及其时区错误问题

QT中怎样修改系统时间及其时区错误问题

算法语言 3年前 (2014-12-15) 浏览: 372 评论: 4

最近写了QT4的第一个编码问题:系统时间界面及实现修改系统时间。本人综合网上的资源,在此作了一个总结。 首先,Qt本身不提供时间设置的函数 Qt本身不提供时间设置的函数,实现修改系统时间使用windows 的native API函数SetSystemTime 所以,头文件需要加入 #include<windows.h> 代码部分 常见问题: 可能有人在网上找到下述代码: 上述代码的运行结果出现时区不对问题:GetSystemTime()获取的是格林尼治时间; 以上都没问题,程序不报错,但是系统时间就是不改变 请用 管理员身份运行QTcreator,程序权限不够

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册