• 10429阅读
  • 13回复

textEdit写入数据库显示在tableView [复制链接]

上一主题 下一主题
离线pangsht
 
只看楼主 倒序阅读 楼主  发表于: 2011-04-06
小妹最近在纠结一个问题,望兄弟姐妹们出手相救!!!
Demo里有个StaffManager的例子,利用QDataWidgerMapper将表中每条记录显示窗口的各控件中,同时也可以写一函数将控件的文本提交写进数据里。
小妹我现在的困惑是,我想将textEdit的文本写入数据库,并在窗口上的tableView中显示出来;假如将textEdit换成lineEdit是不会出错的……

表格里的内容是:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'SimSun'; font-size:9pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">测试测试测试测试测试测试</p></body></html>

求解…………万分感谢!!!
离线alexltr

只看该作者 1楼 发表于: 2011-04-06
将textEdit的setAcceptRichText设为false 试一下?
或者用QLineEdit试下。
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线pangsht
只看该作者 2楼 发表于: 2011-04-06
ui->textEdit->setAcceptRichText(false);
离线pangsht
只看该作者 3楼 发表于: 2011-04-06
ui->textEdit->setAcceptRichText(false);

还是不行呢,还是出现了很多尖括号包含着文本……

改成lineEdit是不会有这样的错误,可是我需要输入很多文字,而且还用到换行,lineEdit不够用呢~
离线alexltr

只看该作者 4楼 发表于: 2011-04-06
如果你是先取得QTextEdit的字符串,再用insert等方法将记录写入数据库,你可以用QTextEdit的toPlainText试试。
但如果你用映射器将字段和窗口部件连接来写回数据库,这个我目前还不了解。
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线alexltr

只看该作者 5楼 发表于: 2011-04-07
其实如果你的数据很长且包含换行等的话,你用QTABLEVIEW显示也就没有太大的意义了。
你的数据可以还是用QTEXTEDIT或QTEXTBROWER显示出来,这样你就不用管数据库里的数据时HTML或PLAINTEXT了。


我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线alexltr

只看该作者 6楼 发表于: 2011-04-07
我觉得并不是出错,里面的内容只是html。
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线pangsht
只看该作者 7楼 发表于: 2011-04-07
首先谢谢alexltr的耐心回答。
表格里的内容是html,可我不想要这种格式。我原意是数据库的表某属性的值是一段话(两句或以上的),而其余属性的值都是整型或较短的可变字符型,而且我想将此表通过QSqlTableModel或QSqlRelationalTableModel在窗体上显示出来,难道除了可以用tableView外,还可以有其他控件?
谢谢!
离线alexltr

只看该作者 8楼 发表于: 2011-04-07
你一定要用Tableview顯示所有的字段數據嗎? 如果接受其它方式, 那應該可以.

就象M$ OUTLOOK一樣, 上面是數據庫記錄的列表tableview, 下面用一個QTextBrower顯示HTML的內容.
在上面的tableview列表最好將HTML的字段隱藏掉,這樣好看一點.
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线pangsht
只看该作者 9楼 发表于: 2011-04-07
是啊,我的原意是类似Excel那样做表格的。。。
离线alexltr

只看该作者 10楼 发表于: 2011-04-07
有没有用QPlainTextEdit试过?
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线pangsht
只看该作者 11楼 发表于: 2011-04-08
非常感谢alexltr !!!

换成QPlainTextEdit后,程序的2大问题都同时解决了!呵呵~~~~太感谢你了!

同时也要深刻检讨一下自己的学习。。。惭愧~~~
离线i4455

只看该作者 12楼 发表于: 2011-04-16
我怎么没找到那个例子啊 在哪呢
离线alexltr

只看该作者 13楼 发表于: 2011-04-17
回 12楼(i4455) 的帖子
C++ GUI Qt4 中第十章的一个例子。
附件: teamleaders.rar (41 K) 下载次数:17
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
快速回复
限100 字节
 
上一个 下一个