用QT生成一个可以选择颜色的画圆程序
时间: 2023-11-25 22:05:01 浏览: 80
画圆的程序
以下是使用QT生成一个可以选择颜色的画圆程序的代码示例:
mainwindow.h文件:
```
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QColorDialog>
#include <QPainter>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_colorButton_clicked();
void on_drawButton_clicked();
private:
Ui::MainWindow *ui;
QColor m_color;
};
#endif // MAINWINDOW_H
```
mainwindow.cpp文件:
```
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_colorButton_clicked()
{
m_color = QColorDialog::getColor(Qt::black, this, "Select Color");
}
void MainWindow::on_drawButton_clicked()
{
int x = ui->xSpinBox->value();
int y = ui->ySpinBox->value();
int radius = ui->radiusSpinBox->value();
QPainter painter(this);
painter.setPen(m_color);
painter.drawEllipse(x, y, radius, radius);
}
```
在此示例中,我们使用了Qt的QColorDialog类来打开一个颜色选择对话框,让用户选择所需的颜色。然后,我们使用QPainter类来绘制一个圆形,使用QSpinBox控件来获取所需的圆形参数,如x和y位置和半径。最后,我们将所选的颜色应用于圆形。
阅读全文