• 9646阅读
  • 15回复

如何设置QTextEdit被选中text的highlight不变灰色,当点右键出菜单时 [复制链接]

上一主题 下一主题
离线honghushw
 

只看楼主 倒序阅读 楼主  发表于: 2010-01-10
当选择QTextEdit中的text时,highlight是蓝色的,与选择qlineedit中的情形一样。可是当点鼠标右键,弹出菜单时,qlineedit中的highlight颜色能保持不变,而qtextedit则变灰色了。
请问诸位有谁知道怎么让qtextedit在这种情况下保持这种highlight颜色吗?

新手上路,没有威望值,希望知道的可以指点一二。在线等,谢谢了。
离线honghushw

只看该作者 1楼 发表于: 2010-01-10
不好意思,看到威望了,不多。
还要问题要问,不能给太多
请包涵。
离线2nd090215
只看该作者 2楼 发表于: 2010-01-10
忍不住又关注一次,
离线honghushw

只看该作者 3楼 发表于: 2010-01-10
唉,竟然没有人回答。
我觉得可能一个属性就搞定了,可是找来找去试来试去,都行不通。
无奈之中才来此求助。
就没有人知道??
离线honghushw

只看该作者 4楼 发表于: 2010-01-11
顶上去,路过的请进来瞅瞅。
离线yangfanxing
只看该作者 5楼 发表于: 2010-01-11
1、你要是在Desinger中弄的话就选择QTextEdit的palette属性,把这个Highlight属性改了就可以了。默认的就是激活和非激活都是你所改变的颜色;
2、const QBrush & QPalette::highlight () const
重写这个函数,实现的是同样的功能~~~但是好像重写不易。。。
3、再搜索下论坛,肯定有好的解决方案~~~
[ 此帖被yangfanxing在2010-01-11 22:31重新编辑 ]
PHPWind好恶心。。。不想看这种界面。。。
离线muma
只看该作者 6楼 发表于: 2010-01-11
lz什么平台啊?
linux下不是这样的
离线yangfanxing
只看该作者 7楼 发表于: 2010-01-11
引用第6楼muma于2010-01-11 22:27发表的  :
lz什么平台啊?
linux下不是这样的


windows就是这样的~~~这个不奇怪。。。各种界面,各种平台相关~~~
PHPWind好恶心。。。不想看这种界面。。。
离线muma
只看该作者 8楼 发表于: 2010-01-11
没有windows下qt经验,呵呵
离线honghushw

只看该作者 9楼 发表于: 2010-01-11
windows平台,不是用Designer做的
直接代码画出来的
跟平台还有关系??
我这个windows和Ubuntu下共用一份代码来着
离线honghushw

只看该作者 10楼 发表于: 2010-01-11
明天参照下5楼的说法,上qt的源代码处查查看
看能否找得到一点头绪,谢谢了
各位尽管支招,这个问题还是得解决呀
离线yangfanxing
只看该作者 11楼 发表于: 2010-01-12
引用第9楼honghushw于2010-01-11 23:40发表的  :
windows平台,不是用Designer做的
直接代码画出来的
跟平台还有关系??
我这个windows和Ubuntu下共用一份代码来着


只是界面上有少许差别~~~风格不一样而已。。。

搜下论坛,记得以前看过类似的例子,有一个挺好的接口实现这个修改~
PHPWind好恶心。。。不想看这种界面。。。
离线honghushw

只看该作者 12楼 发表于: 2010-01-12
5楼的朋友说的很对

在windows平台下我是这样做的:

QPalette p;
p.setColor(QPalette:Inactive, QPalette::Highlighted Text, QColor(255,255,255);
p.setColor(QPalette:Inactive, QPalette::Highlighted, QColor(49,106,197);
QTextEdit::setPalette(p);

不过在kubuntu下试了试,不太奏效。
明天继续努力
离线yangfanxing
只看该作者 13楼 发表于: 2010-01-12
引用第12楼honghushw于2010-01-12 21:24发表的  :
5楼的朋友说的很对
在windows平台下我是这样做的:
QPalette p;
.......


UBUNTU...
PHPWind好恶心。。。不想看这种界面。。。
离线lxbin2003

只看该作者 14楼 发表于: 2010-01-13
void paintEvent ( QPaintEvent * event ) ;
自己到这个虚函数中去实现.
离线honghushw

只看该作者 15楼 发表于: 2010-01-14
Ubuntu和kubuntu下,highlight和弹出菜单后的颜色是一样的。所以就没有改。
结贴了。
谢谢各位的热心帮忙
:)
快速回复
限100 字节
 
上一个 下一个