自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 VS code 框架UI仿制

介绍:1.模仿了VS code的配色,控件布局,风格2.右侧状态栏按钮可以切换子页面3.上方标题栏采用自定义的方法,实现了点击状态栏拖拽,还有最小化,中等显示,最大化显示,关闭的功能.4.可以拖动右下角从而改变整个窗口的大小和内部控件的大小和位置效果预览:VScode:成果的总窗口:功能:难点:1.左侧状态栏的持续性改变pressed状态.这个在之前的文章说过.2.上方自定义标题栏3.整个页面布局(怎么让窗口内的控件按照这种方式排列)实现方法,细节概述:问题主要是布局的问题,不管

2020-06-30 21:25:37 2206

原创 QToolBar中使用样式表QSS设置三态QToolButton按钮

QToolBar中设置三态QToolButton按钮首先,我这个其实是模仿VS Code那个左侧菜单栏做的,看一下目标效果:先分析一下,这是一个状态栏,由按钮组成,按钮有三个状态:正常(灰),鼠标悬浮(白),点击后(白+竖线)这是最后的效果:我这个是不是模仿的很逼真?需要准备的东西:1.知道原VS code工具栏的背景色,是rgb(51,51,51);2.准备好每个按钮的三态图片,我是从百度上挑的几张按钮图标,再使用PhotoShop进行颜色变化,背景透明处理,白色竖线添加,拿一个图标举例如下:

2020-06-26 10:58:17 12878

原创 Qt专栏重要通知

最近看了点别人博客和视频,感觉很有用,给大家推荐一下,以后除了重要的东西,一些基础的我就不写了.视频:https://www.bilibili.com/video/BV1XW411x7NU?p=24基础讲的不错,少了Item views那部分,但我觉得Items views很有用.这个视频的文档资料,光看这个也行:链接:https://pan.baidu.com/s/1x8dT6xorLa0jaNe8Wdd0IQ提取码:8sdyhttps://blog.csdn.net/lian.

2020-06-21 18:55:36 222

原创 Qt进阶--多窗口概要

我是从这个教程总结的:http://c.biancheng.net/view/1874.html多窗口有很多知识点,而且挺乱的,这里分成几点大概说一下,这种讲法还不错:1.多窗口基本分类:1.1.独立窗口和嵌入式窗口:独立窗口就是指子窗口和父窗口不在父窗口中,独立窗口对象还要调用它的show()或者其他方法才能显示出来,否则只是内存中的数据;看似简单,只要创建个对象,show()一下就完事,但其实独立窗口也挺有讲究:有专门做开头封面的Splash窗口,有专门做对话框的Dialog,还有做工

2020-06-08 09:15:13 527

原创 Qt进阶--(嵌入式子窗口)QTabWidget,......

1.使用QTabWidget实现嵌入式子窗口:1.1.添加子窗口(新页面): int QTabWidget::addTab(QWidget * page, const QString & label):用给定的组件创建新的一页返回添加的新页面的索引; int insertTab(int index, QWidget *page, const QString &label):差不多1.2.获取页面:QWidget *widget(int index) cons...

2020-06-08 09:00:04 3434

原创 Qt进阶--(独立子窗口)自定义对话框,工具栏,splash......

基础教程在这里:http://c.biancheng.net/view/1871.html对话窗口类的声明和定义,在父窗口中构建,销毁对话窗口对象都不难.说几个注意点:1.QDialog::exec()和QDialog::show():QDialog::exec():该方法是个阻塞式方法,直到QDialog对象的accept()或者reject()方法被调用,才会返回值;返回值为:QDialog::Accepted, QDialog::Rejected,显然.QDi

2020-06-06 13:45:30 437

原创 Qt进阶--Item Views详解(基础,原创,超级详细)

在设计窗口的控件栏有一种控件叫Item Views,非常有用但是很多人不会,这里详细讲一下.用处:按照一定格式现实数据(列表,表格,树),并且可以在对数据操作的时候增加槽函数.----Excel,----还有这种文件树状图;基本原理:就是MVC(Model View Controller,模型-视图-控制器/代理):这个在游戏和网络引用开发都涉及到.http://c.biancheng.net/view/1864.html https://...

2020-06-05 13:00:01 6808

原创 C++简易画板----Qt实现

使用Qt实现的画板,主要熟悉一下Qt,顺便交代C++作业;完成了一个简洁的GUI界面,有了根据输入数据画圆和画长方形的基本画画功能,可以选择边线颜色和填充颜色,可以保存数据,读取以前数据,可以清屏.代码和可执行exe文件我都上传了,不要积分:百度网盘也能用:链接:https://pan.baidu.com/s/1DMcitjL6gaHEo9VUVHoviA提取码:fth0...

2020-06-04 09:06:35 1620 11

原创 C++----Qt总览

最近在学C++的Qt库,本来想像PySimpleGUI一样写个教程,但太多了.这是我学习的资料:https://zhuanlan.zhihu.com/p/28472916http://c.biancheng.net/qt/还有QtCreator自带的实例和参考手册.这里是几个基础问题,以后用到Qt的时候把这几个事情想起来就行了:1.QObject,QWidget,QFrame,QLabel之间的关系;2.可视化设计的原理,ui指针的类是什么;3.如何获取,改变控件的属性;

2020-06-03 10:14:26 187

使用Qt实现的C++画板(包含源码,可执行exe文件)

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); // 给pixmap赋值 pixmap = new QPixmap(900, 600); //设置背景色 pixmap->fill(Qt::white); //根据pixmap创建一个qpaiter painter= new QPainter(pixmap); // 使用 pixmap,也就是把这个控件加到ui里面 ui->pixmap_label->setPixmap(*pixmap); //这里关联信号和槽 connect(ui->linecolor_r_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->linecolor_g_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->linecolor_b_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->fillcolor_comboBox,SIGNAL(currentTextChanged(QString)),this,SLOT(fillcolor_changed())); //这里初始化填充颜色下拉框: ui->fillcolor_comboBox->addItem("黑色"); ui->fillcolor_comboBox->addItem("白色"); ui->fillcolor_comboBox->addItem("红色"); ui->fillcolor_comboBox->addItem("绿色"); ui->fillcolor_comboBox->addItem("蓝色"); ui->fillcolor_comboBox->addItem("黄色"); } MainWindow::~MainWindow() { delete ui; delete pixmap; delete painter; delete linecolor;delete fillcolor; delete circle,rect; } //这个函数是生成按钮被按下时的画图实现: void MainWindow::on_draw_button_clicked() { if (ui->tabWidget->currentIndex()==0)//这个是画圆的部分 { circle =new Circle(new QPoint(ui->circle_x_spinBox->value(),ui->circle_y_spinBox->value()),ui->circle_r_spinBox->value()); circle->draw(painter); } else if (ui->tabWidget->currentIndex()==1){ rect=new Rect(new QPoint(ui->rect_x_spinBox->value(),ui->rect_y_spinBox->value()),ui->rect_a_spinBox->value(),ui->rect_b_spinBox->value()); rect->draw(painter); } ui->pixmap_label->setPixmap(*pixmap); } //这个函数就是设置边线颜色的: void MainWindow::linecolor_changed(){ linecolor=new QColor(ui->linecolor_r_slider->value(),ui->linecolor_g_slider->value(),ui->linecolor_b_slider->value()); painter->setPen(*linecolor); QPalette label_palette; label_palette.setColor(QPalette::Background, *linecolor); ui->linecolor_display_label->setAutoFillBackground(true); ui->linecolor_display_label->setPalette(label_palette); } void MainWindow::fillcolor_changed(){ QString str=ui->fillcolor_comboBox->currentText(); if (str=="黑色"){ fillcolor =new QColor(Qt::black); } else if (str=="蓝色"){ fillcolor =new QColor(Qt::blue); } else if (str=="黄色"){ fillcolor =new QColor(Qt::yellow); } else if (str=="白色"){ fillcolor =new QColor(Qt::white); } else if (str=="绿色"){ fillcolor =new QColor(Qt::green); } else if (str=="红色"){ fillcolor =new QColor(Qt::red); } painter->setBrush(QBrush(*fillcolor)); } //这个函数一不小心搞出来,没用,删了会报错? void MainWindow::on_linecolor_r_slider_actionTriggered(int action) { } //这个函数就是用来保存的功能实现: void MainWindow::on_save_button_clicked() { ofstream out("D://data.txt", ios::out|ios::app); if (ui->tabWidget->currentIndex()==0)//此处保存圆 { out<<"circle"<<endl; out<<Circle::count<<endl; out<center->x()<<" "<center->y()<<" "<r<tabWidget->currentIndex()==1)//此处保存矩形 { out<<"rect"<<endl; out<<Rect::count<<endl; out<northeast->x()<<" "<northeast->y()<<" "<width<<" "<height<<" "<<endl; Rect::count++; } out<red()<<" "<green()<<" "<blue()<<" "<<endl; out<red()<<" "<green()<<" "<blue()<<" "<>str){ if (str=="rect"){ infile>>z>>a>>b>>c>>d; rect = new Rect(new QPoint(a,b),c,d); infile>>a>>b>>c; linecolor=new QColor(a,b,c); painter->setPen(*linecolor); infile>>a>>b>>c; fillcolor=new QColor(a,b,c); painter->setBrush(QBrush(*fillcolor)); rect->draw(painter); } else{ infile>>z>>a>>b>>c; circle=new Circle(new QPoint(a,b),c); infile>>a>>b>>c; linecolor=new QColor(a,b,c); painter->setPen(*linecolor); infile>>a>>b>>c; fillcolor=new QColor(a,b,c); painter->setBrush(QBrush(*fillcolor)); circle->draw(painter); } ui->pixmap_label->setPixmap(*pixmap); } infile.close();} void MainWindow::on_clear_button_clicked() { pixmap->fill(Qt::white); ui->pixmap_label->setPixmap(*pixmap); }

2020-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除