简易处理自定义QListWidget元素

2024-01-05 08:58

本文主要是介绍简易处理自定义QListWidget元素,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2013年10月14日10:13:47

后来经过测试修改,使用起来可以了,不存在后面那行选不中的情况。整理符合要求

在操作的时候建议使用链表的(QList<Qwidget*>)的形式存起来,更加可以封装好对应的数据结构,

当在上面修改的时候可以跟着进行数据处理。毕竟界面不交互就没有它的意义了


后来调通版 程序下载http://download.csdn.net/detail/jzaicn/6395643

by Again 2013-10-14 10.16.05



2013年3月18日10:13:25

首先给大家发一个效果图:

我的环境:VS2008+QT4.8.4。利用QT designer+少量代码。实现如下效果。



步骤:

首先,新建UI文件。如果有继承,选QWidget




由于你的类型已经继承了QWidget,所以改改自己类的构造方式

[cpp] view plain copy print ?
  1. MyListItem(QWidget *parent = 0,Qt::WindowFlags f=0);//window flag那个是自己加的  
MyListItem(QWidget *parent = 0,Qt::WindowFlags f=0);//window flag那个是自己加的

[cpp] view plain copy print ?
  1. MyListItem::MyListItem(QWidget *parent,Qt::WindowFlags f)  
  2.     : QWidget(parent,f)  
MyListItem::MyListItem(QWidget *parent,Qt::WindowFlags f)
: QWidget(parent,f)

然后在具体代码中如下操作

[cpp] view plain copy print ?
  1. void QXmlTest::on_btnAdd_clicked()  
  2. {  
  3.     QListWidgetItem *item = new QListWidgetItem();  
  4.     ui.listWidget->addItem(item);  
  5.       
  6.     //关联   
  7.     MyListItem *myItem = new MyListItem(ui.listWidget,Qt::Window);  
  8.     myItem->show();//如果不show,下面size就不对了   
  9.     ui.listWidget->setItemWidget(item,myItem);  
  10.       
  11.     //item大小   
  12.     item->setSizeHint (QSize(myItem->rect().width(),myItem->rect().height()));  
  13.   
  14. }  
void QXmlTest::on_btnAdd_clicked()
{
QListWidgetItem *item = new QListWidgetItem();
ui.listWidget->addItem(item);
//关联
MyListItem *myItem = new MyListItem(ui.listWidget,Qt::Window);
myItem->show();//如果不show,下面size就不对了
ui.listWidget->setItemWidget(item,myItem);
//item大小
item->setSizeHint (QSize(myItem->rect().width(),myItem->rect().height()));
}

以上,利用QListWidget,实现元素布局自定义功能。布局由QT designer画出

存在问题:会闪烁一下,还有最后那个选项选不中。不过控件有效

这篇关于简易处理自定义QListWidget元素的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/572345

相关文章

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

使用C++将处理后的信号保存为PNG和TIFF格式

《使用C++将处理后的信号保存为PNG和TIFF格式》在信号处理领域,我们常常需要将处理结果以图像的形式保存下来,方便后续分析和展示,C++提供了多种库来处理图像数据,本文将介绍如何使用stb_ima... 目录1. PNG格式保存使用stb_imagephp_write库1.1 安装和包含库1.2 代码解

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...

Spring Boot 整合 ShedLock 处理定时任务重复执行的问题小结

《SpringBoot整合ShedLock处理定时任务重复执行的问题小结》ShedLock是解决分布式系统中定时任务重复执行问题的Java库,通过在数据库中加锁,确保只有一个节点在指定时间执行... 目录前言什么是 ShedLock?ShedLock 的工作原理:定时任务重复执行China编程的问题使用 Shed

Redis如何使用zset处理排行榜和计数问题

《Redis如何使用zset处理排行榜和计数问题》Redis的ZSET数据结构非常适合处理排行榜和计数问题,它可以在高并发的点赞业务中高效地管理点赞的排名,并且由于ZSET的排序特性,可以轻松实现根据... 目录Redis使用zset处理排行榜和计数业务逻辑ZSET 数据结构优化高并发的点赞操作ZSET 结

使用PyQt实现简易文本编辑器

《使用PyQt实现简易文本编辑器》这篇文章主要为大家详细介绍了如何使用PyQt5框架构建一个简单的文本编辑器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录分析主窗口类 (MyWindow)菜单操作语法高亮 (SyntaxHighlighter)运行程序主要组件代码图示分析实现

微服务架构之使用RabbitMQ进行异步处理方式

《微服务架构之使用RabbitMQ进行异步处理方式》本文介绍了RabbitMQ的基本概念、异步调用处理逻辑、RabbitMQ的基本使用方法以及在SpringBoot项目中使用RabbitMQ解决高并发... 目录一.什么是RabbitMQ?二.异步调用处理逻辑:三.RabbitMQ的基本使用1.安装2.架构