• 9341阅读
  • 9回复

QT实现不了 超链接 功能? [复制链接]

上一主题 下一主题
离线donixli1314
 

只看楼主 倒序阅读 楼主  发表于: 2009-10-08
— 本帖被 XChinux 执行加亮操作(2009-10-08) —
查了好久,居然没查到qt如何实现 超链接!
郁闷!
离线dbzhang800

只看该作者 1楼 发表于: 2009-10-08
能介绍一下你查的过程么?或者你查了哪些东西
离线donixli1314

只看该作者 2楼 发表于: 2009-10-08
我在g.cn上输入 qt hyperlink
离线dbzhang800

只看该作者 3楼 发表于: 2009-10-08
那你能介绍一下你想要什么功能么?

你是要点击一个地方,然后打开一个浏览器或email客户端?
还是要实现一个浏览器?

Qt的manual看过了么?

http://qt.nokia.com/doc/4.5/qtwebkit.html
离线donixli1314

只看该作者 4楼 发表于: 2009-10-08
我想要的很简单
就只是个超链接而已

当鼠标点击到上面时就弹出IE浏览器,然后打开对应的网站
就这么简单
离线donixli1314

只看该作者 5楼 发表于: 2009-10-08
你给的那个链接我也简单的看了下
感觉那个不是我要的
离线donixli1314

只看该作者 6楼 发表于: 2009-10-08
http://www.qtcn.org/bbs/read.php?tid=22424
那是我上次提问的

但就是实现不了
比如
QString strURL = "<a href=http://www.qtcn.org/bbs/read.php?tid=22528>qt</a>";
QLabel label;
label.setText(strURL);
应用程序里显示的是 超链接 的样式
但点击的时候没反应
复制 超链接 里的内容
发现少了 (=22528) 这部分


QString strURL = "<a href=http://www.163.com/>163</a>";
QLabel label;
label.setText(strURL);
这样就显示出来的不是超链接的样式
把 (com)后面的 (/)去掉后才显示超链接的样式
但点击的时候打不开网站
离线XChinux

只看该作者 7楼 发表于: 2009-10-08
除了在QLabel中的内容要用RichText格式(其实就是HTML的一个子集)外,还需要设定openExternalLinks属性为true
这样才能打开外部浏览器、默认电子邮件 客户端等软件。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线donixli1314

只看该作者 8楼 发表于: 2009-10-08
还有点问题想请教版主
1, 在浏览器中输入www.163.com,加载后的网址是http://www.163.com/

QString strURL = "<a href=http://www.163.com/>163</a>";
QLabel label;
label.setText(strURL);
这样在界面上显示出来的不是 超链接
要把后面的 (/)去掉才显示超链接的样式

2,
QString strURL = "<a href=http://www.qtcn.org/bbs/read.php?tid=22528>qt</a>";
QLabel label;
label.setText(strURL);
这样虽然显示的是超链接样式
但链接的是http://www.qtcn.org/bbs/read.php?tid
而不是http://www.qtcn.org/bbs/read.php?tid=22528
为什么 (=22528)这部分会不见了?
离线XChinux

只看该作者 9楼 发表于: 2009-10-08
将语法写正确了。
QString strURL = "<a href=\"http://www.qtcn.org/bbs/read.php?tid=22528\">qt</a>";
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个