加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

QTableWidget中加入QCombo box

(2010-09-10 10:29:06)
标签:

杂谈

我用ui画了一个tablewidget,然后用程序添加行。用的是new tablewidgetitem ,然后setitem(row,col,tablewidgetitem);
设置tablewidget的edittrigger 为doubleclicked。

注:在tablewidget里面添加了combobox.导致的中文出错错误,但是不知道如何解决。

代码如下:
复制代码

  1.      for(int i=0;i<5;i++)
         {
              QTableWidgetItem *item1 = new QTableWidgetItem();        
              QTableWidgetItem *item2 = new QTableWidgetItem();
              QTableWidgetItem *item3 = new QTableWidgetItem();
        
        item1->setText(QString::number(i+1));
        tablewidget->setItem(i,0,item1);
        
        Qstring s = "ABC"    
        item2->setText(s);
        tablewidget->setItem(i,1,item2);
        item3->setText("汉字");
        tablewidget->setItem(i,2,item3);

       QComboBox *comboxProtocol;    
    comboxProtocol = new QComboBox(tableWidget);
       comboxProtocol->addItem("UDP");
       comboxProtocol->addItem("TCP");
      comboxProtocol->setCurrentIndex(1);    
      tablewidget->setCellWidget(i,3,comboxProtocol);    

             }


程序运行后发现:打开中文输入法,然后鼠标点击选中一个格,再敲几个英文字母(此时出现输入法提示栏的汉字,不要按回车和空格),
双击任意一个表格就会崩溃!
报的错误:*.exe 中的 0x65047807 (QtGuid4.dll) 处未处理的异常: 0xC00000FD: Stack overflow
并在qapplication_win.cpp的函数中断:
bool qt_sendSpontaneousEvent(QObject *receiver, QEvent *event)
{
    return QCoreApplication::sendSpontaneousEvent(receiver, event);
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有