#include "toolbox.h"
#include "ui_toolbox.h"
toolbox::toolbox(QWidget *parent) :
QWidget(parent),
ui(new Ui::toolbox)
{
// QThread::sleep(3);//程序静态启动画面延时
ui->setupUi(this);
ui->dockWidget->setFeatures(QDockWidget::NoDockWidgetFeatures);
ui->rightWidget->hide();
// ui->horizontalLayout_3->setSizeConstraint(QLayout::SetFixedSize);
fillColorList(ui->pwindowCBBox);
fillColorList(ui->pwindowtextCBBox);
fillColorList(ui->pbuttonCBBox);
fillColorList(ui->pbuttontextCBBox);
fillColorList(ui->pbaseCBBox);
connect(ui->pwindowCBBox,SIGNAL(activated(int)),this,SLOT(window()));
connect(ui->pwindowtextCBBox,SIGNAL(activated(int)),this,SLOT(windowText()));
connect(ui->pbuttonCBBox,SIGNAL(activated(int)),this,SLOT(button()));
connect(ui->pbuttontextCBBox,SIGNAL(activated(int)),this,SLOT(buttonText()));
connect(ui->pbaseCBBox,SIGNAL(activated(int)),this,SLOT(base()));
QTimer *timer = new QTimer(this);
timer->start(1000);
connect(timer,SIGNAL(timeout()),this,SLOT(showTime()));
}
toolbox::~toolbox()
{
delete ui;
}
void toolbox::on_startButton_clicked()
{
int i = 0;
i_count = ui->countLEdit->text().toInt(nullptr,10);
i_step = ui->stepLEdit->text().toInt(nullptr,10);
if(ui->comboBox->currentIndex() == 0){
ui->progressBar->setRange(0,i_count);
for(i = 0;i <= i_count;i += i_step){
ui->progressBar->setValue(i);
ui->cvalueLEdit->setText(QString::number(i,10));
}
}
else if(ui->comboBox->currentIndex() == 1){
QProgressDialog *progressDlg = new QProgressDialog;
progressDlg->setWindowModality(Qt::WindowModal);
progressDlg->setMinimumDuration(0);//dialog出现需等待的时间
progressDlg->setWindowTitle("Please Wait...");
progressDlg->setLabelText("Copying...");
progressDlg->setCancelButtonText("Cancel");
progressDlg->setRange(0,i_count);
for(i = 0;i <= i_count;i += i_step){
if(progressDlg->wasCanceled())
return;
progressDlg->setValue(i);
ui->cvalueLEdit->setText(QString::number(i,10));
}
}
}
void toolbox::fillColorList(QComboBox *combobox){
QStringList m_colorlist = QColor::colorNames(); //获取Qt已知名称的颜色列表
QString m_color;
foreach (m_color, m_colorlist) { //遍历颜色列表
QPixmap pix(QSize(84,20)); //新建pix图标对象用于显示颜色
pix.fill(QColor(m_color)); //将当前遍历的颜色填充到pix
combobox->addItem(QIcon(pix),m_color);
combobox->setIconSize(QSize(84,20));
combobox->setSizeAdjustPolicy(QComboBox::AdjustToContents);
//设置下拉列表尺寸调整为“符合内容大小”
}
}
void toolbox::window(){
QStringList m_colorlist = QColor::colorNames();
QColor m_color = QColor(m_colorlist[ui->pwindowCBBox->currentIndex()]);
QPalette m_palette = ui->dockWidget->palette();
m_palette.setColor(QPalette::Window,m_color);
ui->dockWidget->setPalette(m_palette);
ui->dockWidget->update();
}
void toolbox::windowText(){
QStringList m_colorlist = QColor::colorNames();
QColor m_color = QColor(m_colorlist[ui->pwindowtextCBBox->currentIndex()]);
QPalette m_palette = ui->dockWidget->palette();
m_palette.setColor(QPalette::WindowText,m_color);
ui->dockWidget->setPalette(m_palette);
ui->dockWidget->update();
}
void toolbox::button(){
QStringList m_colorlist = QColor::colorNames();
QColor m_color = QColor(m_colorlist[ui->pbuttonCBBox->currentIndex()]);
QPalette m_palette = ui->dockWidget->palette();
m_palette.setColor(QPalette::Button,m_color);
ui->dockWidget->setPalette(m_palette);
ui->dockWidget->update();
}
void toolbox::buttonText(){
QStringList m_colorlist = QColor::colorNames();
QColor m_color = QColor(m_colorlist[ui->pbuttontextCBBox->currentIndex()]);
QPalette m_palette = ui->dockWidget->palette();
m_palette.setColor(QPalette::ButtonText,m_color);
ui->dockWidget->setPalette(m_palette);
ui->dockWidget->update();
}
void toolbox::base(){
QStringList m_colorlist = QColor::colorNames();
QColor m_color = QColor(m_colorlist[ui->pbaseCBBox->currentIndex()]);
QPalette m_palette = ui->dockWidget->palette();
m_palette.setColor(QPalette::Base,m_color);
ui->dockWidget->setPalette(m_palette);
ui->dockWidget->update();
}
void toolbox::showTime(){
QTime time = QTime::currentTime();
QString m_time = time.toString("hh:mm:ss");
if(showColon){
m_time[5] = ':';
showColon = false;
}
else{
m_time[5] = ' ';
showColon = true;
}
ui->lcdNumber->display(m_time);
}
void toolbox::on_extendButton_clicked()
{
ExtendDialog *extendDlg = new ExtendDialog;
extendDlg->show();
}
void toolbox::on_narrowButton_clicked()
{
if(ui->rightWidget->isHidden()){
ui->rightWidget->show();
ui->narrowButton->setText("<");
}
else{
ui->rightWidget->hide();
ui->narrowButton->setText(">");
}
}
void toolbox::on_pushButton_clicked()
{
ShapeWidget *shapeWidget = new ShapeWidget;
shapeWidget->show();
}
- 1
- 2
前往页