您的位置:首页 > 编程语言 > Qt开发

QTableWidget美化细节

2015-10-10 09:21 411 查看
1)避免容器控件中点中元素时(如QTableWidget里点击某个item)出现虚线边框。

  
看看此帖:http://stackoverflow.com/questions/2055705/hide-the-border-of-the-selected-cell-in-qtablewidget-in-pyqt

   测试可行

2)奇偶行底色不同,如果不包含子控件,恭喜你,非常容易

QPalette pal;

pal.setColor(QPalette::Base, QColor(255, 0, 0));

pal.setColor(QPalette::AlternateBase, BG_QColor(0, 255, 0));

table_wd->setPalette(pal);

table_wd->setAlternatingRowColors(true);

   如果包含子控件,那就比较麻烦,要自己处理。

3)随着鼠标移动整行改变颜色,创建QTableWidget的子类,在其构造函数中:

setMouseTracking(true);   

然后捕获处理cellEntered信号和覆盖leaveEvent方法。

在cellEnteredSlot中改变当前行的颜色,将之前行(若有)的颜色改回去。leaveEvent代表焦点离开,将之前选中行的颜色改回去

4)不显示横竖分割线

table_wd->setShowGrid(false);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: