Qt:创建窗口继承QListWidget&项目排序,选中项目,

1、新建一个QtGUI应用,创建一个Widget窗口,但是这个Widget窗口时继承自QListWidget的。

 widget.h文件中

class Widget : public QListWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = 0);
    ~Widget();
};

widget.cpp中

2.1、项目自动排序

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->setSortingEnabled(true);  //项目自动排序,默认从小到大
    this->addItems(strList);
}

 

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->addItems(strList);
    this->sortItems(Qt::AscendingOrder);  //默认:增长
}

d75e82c0c9f3935ec7f81ad9bb35576e533.jpg

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->addItems(strList);
    this->sortItems(Qt::DescendingOrder);
}

1c79f066b247df04dddbc1e0a43360f1767.jpg

2.2、选择一个项目

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->addItems(strList);
    this->setCurrentRow(2);
}

2549d3768a8a1ccc96a53a0a74c4fe0cf4e.jpg

2.3设置窗口为透明窗口

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->addItems(strList);
    this->setWindowOpacity(0.5);
}

12d51d2e34308792086c01cc1c1d268d2d4.jpg

Widget::Widget(QWidget *parent)
    : QListWidget(parent)
{
    QStringList strList{tr("项目4"), tr("项目0"), tr("项目2"), tr("项目1")};
    this->addItems(strList);
    this->setStyleSheet("background-color:transparent");  //窗口全黑
}

喵喵喵,窗口变黑了?

74f5368ee6adf36f9074fa3119285706b6f.jpg

 

构造函数只能在程序初始化的时候执行一次

 

转载于:https://my.oschina.net/u/3919756/blog/2051548

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值