Qt
Lydro
这个作者很懒,什么都没留下…
展开
-
【QT】使用QOpenGLWidget后,窗口全屏之后右键菜单出不来的问题
QMainWindow全屏之后,发现右键菜单出不来了,后来排查到问题是和窗口中使用了QOpenGLWidget控件有关系。原创 2024-09-13 16:33:55 · 225 阅读 · 0 评论 -
【Qt】QComboBox和QListWidget样式调整问题
创建QCoboBox的时候,new一个QListView,以PyQt举例,然后设置QListView的item高度就好了。QComboBox下拉条目高度设置不生效的问题,在样式中设置了item的高度,但是不生效。QListWidget或者QListView中的item选中,会有一个虚线框的问题。总是遇到一些重复的问题,隔得时间长了,就又忘记了,记录一下。原创 2024-07-30 17:23:49 · 247 阅读 · 0 评论 -
[Qt]Qt中的QPainter绘制在哪的问题
QPainter 与不同的 QPainterDevice 类交互(例如窗口、pixmap、printer 等),通过 QPainterDevice 的 begin() 和 end() 方法以及 QPaintDeviceMetrics 来控制绘画设备。如果使用 QWidget(或派生类)作为 QPainterDevice,这种情况下 QPainter 将自动在窗口上绘制。如果把 QImage 作为 QPainterDevice,与QPainter搭档使用, 可以实现离屏渲染。原创 2024-06-14 15:23:18 · 252 阅读 · 0 评论 -
QTreeView绘制行不同颜色
说重点,我使用的方法是重写model的data函数和QTreeView的drawBranches。data函数可以控制item行背景色,但是,并不能控制树的下拉控制部分的背景色,这个由drawBranches来配合。上代码:QVariant MyModel::data(const QModelIndex &index, int role /*= Qt::DisplayRole*/) const{ if (!index.isValid()) return QStandardI.原创 2020-11-03 14:58:26 · 1922 阅读 · 0 评论 -
[Qt]QProgressDlg的使用
程序中遇到了一个比较耗时的操作,本来想着扔到线程处理,但是不太合适,所以想用一个进度条显示当前执行的进度。因为耗时无法确定,在网上找资料,有说用一个QTimer控制进度条进度,等耗时结束,直接把进度条设置成100就行了。下面先上代码:1 创建进度条 m_pProgressDlg = new QProgressDialog(this); m_pProgressDlg->setWin原创 2018-01-08 19:27:08 · 629 阅读 · 1 评论 -
QMenu上设置Icon遇到的问题(一)
最近项目中提一个需求,在原有的文字下拉菜单中添加Icon,接到需求的时候觉得很简单,因为QMenu本身就可以设置Icon,只要添加上不就行了。但是,后来发现,这样设置的Icon很小,而我们的图片被放缩到那么小,根本看不清楚~网上查了下,说是QMenu默认的icon最大是16px*16px,What???那我想设置20*20的怎么办?查资料,发现两种解决办法~先说第一种,定义一个新的原创 2017-11-25 15:48:27 · 3641 阅读 · 2 评论 -
Qt实现QQ的“一键退潮”
详细算法请参考http://blog.csdn.net/xieyupeng520/article/details/50374561小圆圆心固定,半径逐渐缩小,大圆圆心随鼠标移动,半径固定。代码很简单,直接贴出代码:#ifndef WIDGET_H#define WIDGET_H#include #include #include namespace Ui {class原创 2017-12-04 23:17:38 · 441 阅读 · 0 评论 -
[Qt]QTableWidget编辑cell更新界面,总跳转到第一页的问题
如题,在编辑完某个cell之后,更新界面,总默认跳转到界面最顶端,这个很烦人,有时候你加了很多行东西,每次跳转都顶端,还得拉下来,在进行下一次编辑。跟了一下代码,发现是因为,我更新界面的时候,使用了clear()这个函数,m_pTableWidget->clear(); //清除表中内容,包括标题头我是每次更新,先clear(),然后又根据数据重刷的界面,而clear()会触发Qt原创 2017-09-27 11:44:43 · 1795 阅读 · 0 评论 -
[Qt]Qt中使用瀑布流
本文参考:http://www.cnblogs.com/csuftzzk/p/qt_infinitescroll.htmlJquery插件实现的核心原理是,使用javascript侦听浏览器的滚动条事件。在Qt中,我们也可以监听滚动条,当滚动条滚到最底端的时候发送一个信号,以此更新QListWidget中的数据内容。connect(m_pListWidgetFile->ve原创 2017-08-25 14:15:20 · 2368 阅读 · 0 评论 -
[Qt]有关QpushButton的setAutoExclusive的问题
最近遇到个问题,就是一组Qpushbutton设置了setAutoExclusive(true)的属性后,想手动再设置某个button的checked状态,设置不生效。查了文档,文档中有句话,也就是说,设置了这个属性后,其他属性对设置了这个属性的button就不起作用了?~~~然后上网搜索了下解决办法,最后这样解决的问题://Reset button的状态,需要把check原创 2017-06-07 14:39:51 · 10251 阅读 · 0 评论 -
[Qt]Qt--拖拽实现
项目里的需求是从Qlistwidget拖拽到另一个QlistView上,并且在Qlistwidget内不可拖动元素。1 Qlistwidget内不可拖动元素,可以重写dropEvent事件。void MTListWidget::dropEvent( QDropEvent *event ){if (event->source() == this) //不允许本控件内拖动even原创 2017-05-26 13:49:12 · 1215 阅读 · 0 评论 -
[Qt]QCombobox下拉列表文字显示一半的问题
之前好好的,使用Qcombobox默认的样式,没什么问题,但是,我在它的layout下面又加了个layout,就出现了如下图所示的情况,文字特别挤。去掉新加的layout就没问题了,也没搞明白什么原因导致的。只能重写设置了下样式,在样式里写死了下拉项的高度,然后问题解决。QComboBox* pViewList = new QComboBox;pViewList->se原创 2017-05-25 18:17:11 · 6568 阅读 · 0 评论 -
[Qt]Qt的Connect中调用重载signal的问题
最近遇到个问题,如果不用SIGNAL,SLOT的连接方式,想在connect中使用lamda表达式,那怎么区分控件的重载的消息函数呢?可以这样做,先给重载的消息函数重命名,例如,给QCombobox中的currentIndexChanged(int index)重命名,typedef void(QComboBox::*IntIndexChange)(int);然后在原创 2017-05-25 18:09:20 · 1217 阅读 · 0 评论