Qt的QListWidget使用记录

ui->listWidget->setWindowFlags(Qt::FramelessWindowHint);  //设置框架窗口隐藏
ui->listWidget->setFrameShape(QListWidget::NoFrame);// 设置没有框架
QListWidgetItem* item = new QListWidgetItem();//增加listwidgetitem
item->setSizeHint(QSize(595, 50));//设置item的宽高
QWidget* widget = new MulSonOtherAddr();//创建子部件
ui->listWidget->addItem(item);//添加子部件
ui->listWidget->setItemWidget(item, widget); //设置子部件
ui->listWidget->setFocusPolicy(Qt::NoFocus);//设置无聚焦装填
ui->listWidget->setViewMode(QListView::ListMode);//设置显示模式为列表模式
ui->listWidget->verticalScrollBar()->hide();//列滚动条隐藏
ui->listWidget->verticalScrollBar()->setStyleSheet("QScrollBar{width:0px;}");//列滚动条的宽度为1
发布了9 篇原创文章 · 获赞 0 · 访问量 6024
展开阅读全文

QT中QListWidget窗口中条目更新,如何让它动态显示出来

05-05

我做的是一个公交车报站系统,在点击完模拟按钮后,会模拟走完整条路线,但是QListWidget不会动态更新,其中的数据处理部分还是会进行![图片说明](https://img-ask.csdn.net/upload/201505/05/1430791339_595325.png) 附上模拟按钮的代码 /* simulate */ void MyDialog::on_pushButton_3_clicked() { while (1) { // 先清空显示 ui->listWidget->clear(); QFile file("bus_.xml"); if (!file.open(QIODevice::ReadOnly)) return ; QDomDocument doc; if (!doc.setContent(&file)) { file.close(); return ; } file.close(); QDomElement docElem = doc.documentElement(); QDomElement c; QString curstation; int flag=0, count=0; QDomNode n = docElem.firstChild(); while(!n.isNull()) { if (n.isElement()) { QDomElement e = n.toElement(); QDomNodeList list = e.childNodes(); if (flag == 1) { for(int i=0; i<list.count(); i++) { QDomNode node = list.at(i); if(node.isElement()) { if (i == number) { qDebug()<<number; //ui->listWidget->addItem(new QListWidgetItem(QIcon("yuan.jpg"), node.toElement().text())); ui->listWidget->setCurrentItem(new QListWidgetItem(QIcon("yuan.jpg"), node.toElement().text())); curstation = node.toElement().text(); qDebug()<<"next station"<<curstation; } else{ //ui->listWidget->addItem(" " + node.toElement().text()); ui->listWidget->setCurrentItem (new QListWidgetItem(QIcon("yuan.jpg"), node.toElement().text())); } } } } else { QDomNode node_count = list.at(0); count = node_count.toElement().text().toInt(); //qDebug()<<count; } flag++; } n = n.nextSibling(); } //char command[256] = {0}; QString command; command = _config_2() + curstation ; qDebug()<<command; /* yuying */ tts_open_test("/dev/ttyUSB0", (char *)command.toStdString().c_str()); /* net_demo_string */ /* string shuld be utf-8 */ net_demo_string((char *)command.toStdString().c_str()); qDebug()<<"net_demo_string"; /* maybe change */ QByteArray datagram = curstation.toStdString().c_str(); sender->writeDatagram (datagram.data(), datagram.size(), QHostAddress::Broadcast, 45454); if (count == number) { return ; } ui->listWidget->update (); number++; sleep(1); } } 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览