2.可视化UI设计

参考视频:https://www.bilibili.com/video/BV1AX4y1w7Nt

  • 窗口的三种类型,每种类型窗体拥有的方法不同:

    • MainWindow:指的是正常窗体:有菜单栏、状态栏、工具栏的窗体
    • Widget:指的是只是但有个窗体,其余什么都没有,最纯净的窗口
    • Dialog:指的是对话框窗体,拥有对话框可以有的一些操作:接受、拒绝、退出、取消、确认等
QMetaObject::connectSlotsByName(Dialog);//表示使用方法名来建立信号&槽的关系

/**
* @brief Dialog::on_checkBoxUnderline_clicked
* @param checked
* sender checkBoxUnderline
* signal clicked
* receiver Dialog
* slot on_checkBoxUnderline_clicked(bool checked)
*/
void Dialog::on_checkBoxUnderline_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setUnderline(checked);//设置下划线
ui->textBox->setFont(font);//设置font
//ui->textBox->font().setUnderline(checked);//界面不能这么设置,因为font()的返回值是const,不能改,但是能获取
} void Dialog::on_checkBoxItalic_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setItalic(checked);//设置斜体
ui->textBox->setFont(font);//设置font
} void Dialog::on_checkBoxBold_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setBold(checked);//设置加粗
ui->textBox->setFont(font);//设置font
} /**
* @brief Dialog::on_checkBoxUnderline_clicked
* @param checked
* sender checkBoxUnderline
* signal clicked
* receiver Dialog
* slot on_checkBoxUnderline_clicked(bool checked)
*/
void Dialog::on_checkBoxUnderline_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setUnderline(checked);//设置下划线
ui->textBox->setFont(font);//设置font
//ui->textBox->font().setUnderline(checked);//界面不能这么设置,因为font()的返回值是const,不能改,但是能获取
} void Dialog::on_checkBoxItalic_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setItalic(checked);//设置斜体
ui->textBox->setFont(font);//设置font
} void Dialog::on_checkBoxBold_clicked(bool checked)
{
QFont font = ui->textBox->font();//获取font
font.setBold(checked);//设置加粗
ui->textBox->setFont(font);//设置font
} /**
* @description 设置字体颜色
* 该槽函数是Radio Btn 的槽函数,是手动定义的。目的是让三个Radio Btn 共用一个槽函数
* 也可以让三个Radio Btn有三个槽函数,只是会让代码显示很臃肿
* 最后记得手动在窗口构造函数里(或者根据逻辑在代码其他地方)设置connnect ,使界面和槽函数连接起来。
* QObject::connect(ui->radioButtonBlack, SIGNAL(clicked()), this, SLOT(on_colorRadioBtn_clicked()));
* QObject::connect(ui->radioButtonRed, SIGNAL(clicked()), this, SLOT(on_colorRadioBtn_clicked()));
* QObject::connect(ui->radioButtonBlue, SIGNAL(clicked()), this, SLOT(on_colorRadioBtn_clicked()));
*/
void Dialog::on_colorRadioBtn_clicked()
{
QPalette palette = ui->textBox->palette();
if(ui->radioButtonBlack->isChecked()){
palette.setColor(QPalette::Text,Qt::black);
}
else if(ui->radioButtonBlue->isChecked()){
palette.setColor(QPalette::Text,Qt::blue);
}
else if(ui->radioButtonRed->isChecked()){
palette.setColor(QPalette::Text,Qt::red);
}
else
palette.setColor(QPalette::Text,Qt::black);
ui->textBox->setPalette(palette);
}

QT5笔记:2.可视化UI设计的更多相关文章

  1. [读书笔记]iOS 7 UI设计 对比度

    好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...

  2. Android 高级UI设计笔记07:RecyclerView 的详解

    1. 使用RecyclerView       在 Android 应用程序中列表是一个非常重要的控件,适用场合非常多,如新闻列表.应用列表.消息列表等等,但是从Android 一出生到现在并没有非常 ...

  3. UI设计学习笔记(7-12)

    UI学习笔记(7)--扁平化图标 认识扁平化 Flat Design 抛弃传统的渐变.阴影.高光等拟真视觉效果,打造看上去更平的界面.(颜色.形状) 扁平化图标有什么优缺点 优点: 简约不简单.有新鲜 ...

  4. Qt5.9 UI设计(七)——统一样式设计

    前言 前面已经将UI设计部分实现,各页面也做了最简单的设计,本章介绍一下qss样式的使用.样式设计最终的显示效果如下图: 操作步骤 将stylesheet.qss 样式文件添加进工程 styleshe ...

  5. 【Android UI设计与开发】第05期:引导界面(五)实现应用程序只启动一次引导界面

    [Android UI设计与开发]第05期:引导界面(五)实现应用程序只启动一次引导界面 jingqing 发表于 2013-7-11 14:42:02 浏览(229501) 这篇文章算是对整个引导界 ...

  6. 用户体验设置和UI设计的10个不同点

    在这个技术的世界,UX和UI这两个词条在差点儿全部公司都非常流行,不管大小,都在寻找招聘UX/UI设计师. 这两个缩写词条使得整个技术工业为之疯狂,由于它们是最先进的前沿技术. 那这两个词条实际上是什 ...

  7. Android UI设计规则

    Android UI技巧 1.1 不该做什么 l  不要照搬你在其他平台的UI设计,应该让用户使用感觉是在真正使用一个Android软件,在你的LOGO显示和平台总体观感之间做好平衡 l  不要过度使 ...

  8. 优秀设计师应当知道的20大UI设计原则

    世界级图形设计大师Paul Rand(保罗.兰德)曾经说过:"设计绝不是简单的排列组合与简单地再编辑,它应当充满着价值和意义,去说明道理,去删繁就简,去阐明演绎,去修饰美化,去赞美褒扬,使其 ...

  9. 专访UI中国认证设计师卤大湿 | 一位UI大师关于UI设计的思考

    现如今,设计师可以说是一个自带光环的Title,很多深藏不漏的UI设计师们都在以自己的方式为产品设计做出贡献,卤大湿便是这其中之一. 精分青年卤大湿,这个在UI中国上是张酷酷的鲁迅头像的UI设计师,是 ...

  10. 全是干货!UI设计的30条黄金准则!

    http://www.wex5.com/portfolio-items/js-1/ 全是干货!UI设计的30条黄金准则!   总的来说,好的UI界面有几个特征:简洁.便利.目标明确.人性化.字面上看这 ...

随机推荐

  1. This request has been blocked; the content must be served over HTTPS.此请求已被阻止;内容必须通过HTTPS提供

    近期在做将高德地图替换为天地图时遇到了这个问题,原因是https由于安全协议禁止了http的请求 http://api.tianditu.gov.cn/api?v=4.0&tk=XXXXXXX ...

  2. OSG开发笔记(三十九):OSG中模型的透明度实现、球体透明度Demo

    前言   在OSG中,对于一些效果未被选中或者包含等业务,需要半透明效果来实现.  本篇描述OSG的半透明实现方式.   Demo      透明 功能概述   透明效果在三维场景中扮演着重要角色,它 ...

  3. cas3.5配置LDAP域控

    一. 安装cas3.5 点击下载 CAS 3.5.2 :CAS 解压缩下载的 cas-server-3.5.2-release.zip,在 %CAS%\modules文件夹中找到cas-server- ...

  4. Postgresql使用触发器实现同步插入两张表

    在有一个陈旧的系统的情况下,如果升级API可以优先使用微服务的形式,将数据库进行独立拆分,将原来的数据库原原本本地固定在旧系统中,然后在独立的微服务中运行与部署新系统. 如果原有的数据需要在更换结构的 ...

  5. C#字符串拼接的几种方式及其性能分析对比

    前言 在C#编程中字符串拼接是一种常见且基础的操作,广泛应用于各种场景,如动态生成SQL查询.构建日志信息.格式化用户显示内容等.然而,不同的字符串拼接方式在性能和内存使用上可能存在显著差异.今天咱们 ...

  6. 跟着 8.6k Star 的开源数据库,搞 RAG!

    过去 9 年里,HelloGitHub 月刊累计收录了 3000 多个开源项目.然而,随着项目数量的增加,不少用户反馈:"搜索功能不好用,找不到想要的项目!" 这让我意识到,仅仅收 ...

  7. Qt编写可视化大屏电子看板系统22-平滑曲线图

    一.前言 平滑曲线是所有涉及到曲线图的项目中,绕不开的一个话题,尽管很多人爱看折线图,但是很多时候来个平滑曲线图,会更加赏心悦目,这就好比现在的手机app移动客户端上,从最初的四方四正到现在的平滑圆角 ...

  8. Qt开源作品4-网络调试助手

    一.前言 网络调试助手和串口调试助手是一对的,用Qt开发项目与硬件通信绝大部分都是要么串口通信(RS232 RS485 Modbus等),要么就是网络通信(TCP UDP HTTP等),所以一旦涉及到 ...

  9. 解决Failed to load module canberra-gtk-module错误

    在Ubuntu环境里,通过./triangulation 1.png 2.png 命令运行高翔的ch7的triangulation程序时报错: Gtk-Message: 09:10:26.571: F ...

  10. VS2010/MFC 获取当前程序路径的方法

    第一种方法 DWORD GetCurrentDirectory( DWORD nBufferLength, // size, in characters, of directory buffer LP ...