QT16--最近用到的功能总结

  1. int 转为 QString类型
int i=10;
QString test=QString::number(i);
  1. Qt 信号与槽的连接问题
  • Qt的信号函数里的变量,槽函数的变量,如果有的话,必须和信号函数里的变量保持一致。
QObject::connect(listWidget,SIGNAL(QlistWidgetItem*),this,SLOT(rSlot(QlistWidgetItem*)));

注:两个函数内的变量保持一致,如果在槽函数里写成rSlot(QlistWidgetItem* item),那么就会报错

  1. QToolButton使用
  • 参考链接一,链接二

  • 实现以下五个功能:本身为方向按钮;带框的方向按钮(方向可变化)、QT加图标、toolButton加选项、toolButton同时有图标和文字;

  • 在这里插入图片描述

  • 在这里插入图片描述

//一、
    QToolButton *toolBtn1 = new QToolButton;
    toolBtn1->setArrowType(Qt::LeftArrow);
    toolBtn1->setAutoRaise(true);
    
//二、
    QToolButton *toolBtn2 = new QToolButton;
    toolBtn2->setArrowType(Qt::LeftArrow);
    
//三、
    QToolButton *toolBtn3 = new QToolButton;
    toolBtn3->setIcon(QIcon(":/picture/tool.png"));
    
//四、
    QToolButton *toolBtn4 = new QToolButton;
    toolBtn4->setPopupMode(QToolButton::MenuButtonPopup);
    QMenu *menu = new QMenu;
    menu->addAction("剪切");
    menu->addAction("粘贴");
    menu->addAction("复制");
    toolBtn4->setMenu(menu);

//五、
   QToolButton *toolBtn5 = new QToolButton;
   toolBtn5->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
   toolBtn5->setIcon(QIcon("./picture/plus.png"));
   toolBtn5->setText("add to model");

如果案例5中将style改为toolBtn5->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);,则显示结果类似如下
在这里插入图片描述

  1. QPushButton,设为不可用和可用
QPushButton *b1=new QPushButton;
b1->setEnabled(false);//不可用
b1->setEnabled(true)//可用
  1. Qt中的路径问题
  • 参考
  • ./表示当前路径;
  • ../表示上一级目录;
  1. QSpacer的用法
  • 不论是水平还是垂直的spacer,头文件只有一个QSpcerItem
  • 如果定义水平spacer时,初始定义时,固定高度(QSizePolicy::Minimum),水平方向可以变化(QSizePolicy::Expanding);垂直spacer类似
QSpacerItem *Hspacer=new QSpacerItem(10,3,QSizePolicy::Expanding,QSizePolicy::Minimum);
  1. QFont 设置某段文字样式
  • 步骤:先实例化一个QFont,然后对其设置各种属性,然后利用部件的setFont()函数将定义的QFont加入。
#include<QFont>

QFont font;//实例化QFont对象
font.setFamily("微软雅黑");//字体
font.setPixelSize(25);//文字像素大小
font.setPointSize(20);//文字大小
font.setUnderline(true);//下划线
font.setStrikeOut(true);//中划线
font.setOverline(true);//上划线
font.setItalic(true);//斜体
font.setBold(true);//粗体
font.setStyle(QFont::StyleOblique);
font.setCapitalization(QFont::Capitalize);//首字母大写
font.setLetterSpacing(QFont::PercentageSpacing,200);//间距
QLineEdit*p=new QLineEdit(this);
p->resize(300,100);
p->move(0,100);
p->setFont(font);
  • 设置文字颜色利用setStyleSheet(color:blue),颜色设为蓝色
  1. QTableWidget使用

  1. C++中enum重的使用
//定义
enum fruit{x1,x2=0,x3=4,x4=10};//x1=0
int main()
{
	fruit apple=x4;//apple=10
	cout<<apple<<endl;//输出10;
}

©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页