在写一个简单的文件浏览器时,遇到一个问题。想实现新建目录时能像一般的文件管理器那样,目录图标以下有一个编辑框提示用户给目录命名(例如以下图),可是不知道怎么给单元项QListWidgetItem加入QLineEdit控件。查了好久Qt帮助文档,最终发现了QListWidget::setItemWidget(),就试了一下。成功加入了,还算惬意。大家假设有更好的方法请告诉我。

void QListWidget::setItemWidget(QListWidgetItem * item, QWidget * widget)

设置在给定项目中显示的小部件。

此功能仅可用于在列表小部件项目的位置显示静态内容。假设你想显示自己定义的动态内容或运行自己定义编辑器部件,使用qlistview和子类化QItemDelegate取代。

这个功能介绍Qt 4.1。

关键代码:

//图片换成目录图标就能够
int main(int argc,char* argv[])
{
QApplication app(argc,argv); QListWidget *listWidget = new QListWidget();
listWidget->setSpacing(10);
listWidget->setViewMode(QListView::IconMode);
listWidget->setIconSize(QSize(100,100));
QPixmap pix1(QString(":/list/image/1.jpg"));
QPixmap pix2(":/list/image/2.jpg");
QListWidgetItem *item1 = new QListWidgetItem(QIcon(pix1.scaled(QSize(100,100))),"picture1");
QListWidgetItem *item2 = new QListWidgetItem(QIcon(pix2.scaled(QSize(100,100))),"picture2"); QLineEdit* line = new QLineEdit; //创建部件 listWidget->addItem(item1);
listWidget->addItem(item2); //先加入项目
item1->setSizeHint(QSize(100,120));
item2->setSizeHint(QSize(100,120)); listWidget->setItemWidget(item2,line); //加入部件
// listWidget->removeItemWidget(item2);
listWidget->show();
app.exec();
return 0;
}

void QListWidget::removeItemWidget(QListWidgetItem * item)

用于移除加入的部件

QListWidget加入小控件的更多相关文章

  1. android 之 桌面的小控件AppWidget

    AppWidget是创建的桌面窗口小控件,在这个小控件上允许我们进行一些操作(这个视自己的需要而定).作为菜鸟,我在这里将介绍一下AppWeight的简单使用. 1.在介绍AppWidget之前,我们 ...

  2. 怎样在Android实现桌面清理内存简单Widget小控件

    怎样在Android实现桌面清理内存简单Widget小控件 我们常常会看到类似于360.金山手机卫士一类的软件会带一个widget小控件,显示在桌面上,上面会显示现有内存大小,然后会带一个按键功能来一 ...

  3. 基于jquery 封装的 select 小控件,解决 IE6 7 8里 select 边框 高度 无法遮挡等问题

    一.基本原理 select控件在浏览器中是个永远的痛,不同的版本解析出来的可谓五花八门.主要有以下问题: 1,IE6中无法设置高度,Z INDEX永远在最上,无法被其它层遮挡 2,IE7中可以设置高度 ...

  4. MVC4加载zTree树小控件

    前言: 第一次学习使用MVC框架,找了个练手项目,加载zTree树小控件.下面我就一步步说明我这次练手的经历以记录.如果有什么错误,希望各位大神帮忙指正,谢谢. 第一步: 利用VS2010新建一个MV ...

  5. cesium编程入门(四)界面介绍及小控件隐藏

    感性认识 界面介绍,viewer Geocoder : 查找位置工具,查找到之后会将镜头对准找到的地址,默认使用bing地图 Home Button :视角返回初始位置. Scene Mode Pic ...

  6. cesium编程入门(四)界面介绍及小控件隐藏

    感性认识 界面介绍,viewer Geocoder : 查找位置工具,查找到之后会将镜头对准找到的地址,默认使用bing地图 Home Button :视角返回初始位置. Scene Mode Pic ...

  7. UI各种小控件的用法

    今天给大家列举出来UI中的一些小控件的用法.方便大的学习与使用 一些方法和属性我们能够查看API文档.不必将每一个控件的功能都记住, 由于在使用的过程中,我们能够查看API文档.方便使用,我们仅仅要记 ...

  8. 实现拖拽上传文件的一款小控件——dropzone

    由于专注所以专业.非常多小巧的东西乍一看非常不起眼,却在特定的领域表现不俗,就是由于集中了热情. dropzone就是这样一款小控件,实现拖拽上传.它不依赖于其他像jquery等JS库.并且支持多方面 ...

  9. cesium页面小控件的隐藏

    cesium页面小控件的隐藏 1   创建一个Viewer var viewer = new Cesium.Viewer('cesiumContainer');//cesiumContainer为di ...

随机推荐

  1. Python-__builtin__与__builtins__的区别与关系(超详细,经典)(转)

    Python-__builtin__与__builtins__的区别与关系(超详细,经典) (2013-07-23 15:27:32) 转载▼   分类: Python 在学习Python时,很多人会 ...

  2. 漫话Asp.net

    经过一段时间的接触,对asp.net这一块进行了很多其它的了解,漫话一下. Asp.net与Web : asp.net属于动态网页技术,属于web应用程序开发. Web应用程序通常是B/S模式. 和B ...

  3. Ubuntu下的多线程下载工具:MultiGet;并与 Firefox 建立关联 uget

    Ubuntu下非常给力的下载工具--uget+aria2 1.uget的安装: sudo add-apt-repository ppa:plushuang-tw/uget-stable sudo ap ...

  4. getaddrinfo()函数详解

    Socket的地址查询函数 http://blog.sina.com.cn/s/blog_988c054b010139e3.html http://www.cnblogs.com/cxz2009/ar ...

  5. storm0.9.0.1升级安装

    来自:http://blog.csdn.net/liuzhoulong/article/details/21112101 1,下载0.9.0.1 http://storm.incubator.apac ...

  6. hdu 4865 Peter's Hobby(概率dp)

    http://acm.hdu.edu.cn/showproblem.php? pid=4865 大致题意:有三种天气和四种叶子状态.给出两个表,各自是每种天气下叶子呈现状态的概率和今天天气对明天天气的 ...

  7. JavaScript文件引入方式区别

    1.JavaScript文件引入方式 (1)正常引入 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js&quo ...

  8. 数据库选型之亿级数据量并发访问(MySQL集群)

    刘 勇  Email:lyssym@sina.com 简介 针对实际应用中并发访问MySQL的场景,本文采用多线程对MySQL进行并发读取访问,其中以返回用户所需的数据并显示在终端为测试结束节点,即将 ...

  9. Word基础总结

    Word文本的操作 一.文 ◎Backspace(退格键) 删除光标以左的内容    ◎Delete (删除键)    删除光标以右的内容     #实话之前一直没在意,一直用backspace删除 ...

  10. 简单安装MongoDB

    前言 首先说明一下环境,以免环境的不同造成不必要的影响 本次采用centos6.8版本linux系统 [root@dev1 ~]# cat /etc/redhat-release CentOS rel ...