QDialog_trial_1

简介: QDialog_trial_1

QDialog_trial_1

可视化 UI 设计

版本:Qt 6

  • 目标
  • 字体样式设置、清空按钮
  • conectSlotsByName 将信号与槽关联
  • 复选框
  • 字体颜色设置
  • 单选框,3个 signal 触发同一个 slot
  • 确定、退出按钮
  • 可视化方式生成信号、槽关联
  • 包括
  • 布局管理
  • 信号与槽的关联
  • 添加资源文件
  • 为应用程序设置图标

添加资源文件 (.qrc)

  • File >>> New File >>> Qt >>> Qt Resource File

信号与槽的关联

QObject::connect(sender,SIGNAL(signal()),receiver,SLOT(slot()));
  • 使用时 QObject 通常可以省略
  • SIGNAL 和 SLOT 是 Qt 的宏,用于将参数转换为相应的字符串
  • 注意事项
  • 一个信号可以连接多个槽函数
  • 多个信号可以连接同一个槽函数
  • 一个信号可以连接另一个信号
开启信号和槽关联
QMetaObject::connectSlotsByName(Dialog)
为应用程序设置图标
  • ui 编辑 >>> 右下角 >>> 搜索 icon
  • “…” 点击 >>> 资源 >>>找到之前保存的文件夹里的图标

布局管理

  • Containers >>> Group Box
  • Buttons >>> Check Box(复选框)
  • Radio Button(单选框)
  • Input Widgets
  • Plain Text Editor (输入框)
  • Buttons
  • Push Button(清空、确定、退出)
  • Spacers
  • Horizontal Spacer (补位)

代码部分

单选框_改变颜色

  • dialog.cpp
connect(ui->radioButton_black,SIGNAL(clicked()),this,SLOT(do_FontColor()));    connect(ui->radioButton_blue,SIGNAL(clicked()),this,SLOT(do_FontColor()));
connect(ui->radioButton_red,SIGNAL(clicked()),this,SLOT(do_FontColor()));
void Dialog::do_FontColor()
 {
     QPalette plet=ui->plainTextEdit->palette();
     if(ui->radioButton_black->isChecked())
         plet.setColor(QPalette::Text,Qt::black);
     else if(ui->radioButton_blue->isChecked())
         plet.setColor(QPalette::Text,Qt::blue);
     else if(ui->radioButton_red->isChecked())
         plet.setColor(QPalette::Text,Qt::red);
     ui->plainTextEdit->setPalette(plet);
}
void Dialog::on_checkBox_underline_clicked(bool checked)
{
    QFont font=ui->plainTextEdit->font();
    font.setUnderline(checked);
    ui->plainTextEdit->setFont(font);
}
void Dialog::on_checkBox_italic_clicked(bool checked)
{
    QFont font=ui->plainTextEdit->font();
    font.setItalic(checked);
    ui->plainTextEdit->setFont(font);
}
void Dialog::on_checkBox_bold_clicked(bool checked)
{
    QFont font=ui->plainTextEdit->font();
    font.setBold(checked);
    ui->plainTextEdit->setFont(font);
}
  • dialog.h
void do_FontColor();
目录
相关文章
|
Python
Chapter 1: Creating the GUI Form and Adding Widgets
# -*- coding: utf-8 -*- # import import tkinter as tk # 1 imports from tkinter import ttk from tkinter import scrolledtext as st win = tk.
997 0
IsoAlgo3d - PCF format 3d visualization tool
IsoAlgo3d - PCF format 3d visualization tool eryar@163.com IsoAlgo3d is a PCF format 3d visualization tool.
1668 0
|
Ubuntu 开发工具 C语言
Building QT projects from the command line
/************************************************************************ * Building QT projects from the command line * 说明: * 很多时候都是通过Qtcreator进行项目的创建以及编译,但是有时候可能 * 会遇到一些编译小问题,这时候命令行创建工程、编译工程可以作为测试、验证 * 的一种手段。
856 0