Chinaunix首页 | 论坛 | 博客
  • 博客访问: 347585
  • 博文数量: 100
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 521
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-31 11:37
个人简介

活到老,学到老

文章分类

全部博文(100)

文章存档

2018年(1)

2017年(2)

2016年(11)

2015年(82)

2014年(4)

我的朋友

分类: LINUX

2015-09-12 17:55:43

1、设置图标
  
  1. QIcon icon=QIcon(":/image/test.ico");
  2. setWindowIcon(icon);
2、隐藏边框并将该节目置于顶层

  1. setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
3、设置控件大小

  1. this->resize( QSize( 630, 220 ));

4、设置背景

  1. QFrame *frame = new QFrame;
  2. frame->resize(630,220);
  3. QPixmap pixmap(":/image/test.png");
  4. QPalette palette; palette.setBrush(frame->backgroundRole(),QBrush(pixmap));
  5. frame->setPalette(palette);
  6. frame->setAutoFillBackground(true);
5、设置按钮图片
    分别为普通、停留、点击显示的图片。
  1. ui->pushButton->setStyleSheet("QPushButton{border-image: url(:/image/button-1.png);}"
  2.                                   "QPushButton:hover{border-image: url(:/image/button-2.png);}"
  3.                                   "QPushButton:pressed{border-image: url(:/image/button-2.png);}");
6、设置对齐方式

  1. ui->label->setAlignment(Qt::AlignHCenter);
7、无边框,鼠标拖动窗口
test.h

  1. private:
  2.     QPoint move_point; //移动的距离
  3.     bool mouse_press; //鼠标按下

  4. public:
  5.      void mousePressEvent(QMouseEvent *event);
  6.      void mouseMoveEvent(QMouseEvent *event);
  7.      void mouseReleaseEvent();
test.cpp

  1. void mousePressEvent(QMouseEvent *event)
  2. {
  3.  if(event->button() == Qt::LeftButton)
  4.  {
  5.       mouse_press = true;
  6.       //鼠标相对于窗体的位置(或者使用event->globalPos() - this->pos()
  7.       //move_point = event->pos();
  8.       move_point = event->globalPos() - this->pos();
  9.       event->accept();
  10.  }

  11. }
  12. void mouseMoveEvent(QMouseEvent *event)
  13. {
  14.     //若鼠标左键被按下
  15.     if(mouse_press)
  16.     {
  17.         //鼠标相对于屏幕的位置
  18.         QPoint move_pos = event->globalPos();
  19.        //移动主窗体位置
  20.        this->move(move_pos - move_point);
  21.         event->accept();
  22.     }
  23. }

  24. void mouseReleaseEvent()
  25. {
  26.     //设置鼠标为未被按下
  27.     mouse_press = false;
  28. }
8、获取注册列表的值

  1. QSettings *reg = new QSettings("HKEY_CLASSES_ROOT\\test\\shell\\open\\command", QSettings::NativeFormat);
  2. QString softwarefilepath=reg->value("Default").toString();
  3. delete reg;

9、调用外部的程序

  1. QString program = “C://setup.exe”;
  2. QStringList arguments;
  3. arguments<<"/SILENT"<<"/NOCANCEL"<<"/DIR="<<"D://";
  4. QProcess *myProcess = new QProcess;
  5. myProcess->start(program, arguments);
10、调用通知信息框

  1. QMessageBox message(QMessageBox::NoIcon, "error", tr("Error"));
  2. message.setIconPixmap(QPixmap(":/image/failed.png"));
  3. message.exec();
11、qt读写Ini

  1. //Qt中使用QSettings类读写ini文件
  2. //QSettings构造函数的第一个参数是ini文件的路径,第二个参数表示针对ini文件,第三个参数可以缺省
  3. QSettings *configIniWrite = new QSettings("D://update.ini", QSettings::IniFormat);
  4. //向ini文件中写入内容,setValue函数的两个参数是键值对
  5. //向ini文件的第一个节写入内容,ip节下的第一个参数
  6. configIniWrite->setValue("update/version", "1.0.1");
  7. //向ini文件的第一个节写入内容,ip节下的第二个参数
  8. configIniWrite->setValue("update/downloadUrl", " style="color:#0000CC;">);
  9. //写入完成后删除指针
  10. delete configIniWrite;

//读ini文件

  1. QSettings *configIniRead = new QSettings("D://update.ini", QSettings::IniFormat);
  2. //将读取到的ini文件保存在QString中,先取值,然后通过toString()函数转换成QString类型
  3. QString version= configIniRead->value("update/version").toString();
  4. QString downloadurl= configIniRead->value("update/downloadUrl").toString();
  5. //打印得到的结果
  6. //读入入完成后删除指针
  7. delete configIniRead;











    
阅读(828) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~