gpt4 book ai didi

qt - QSlider (Qt) 的自定义绘图

转载 作者:行者123 更新时间:2023-12-04 18:25:32 26 4
gpt4 key购买 nike

我想在 QSlider 上拦截 QPaintEvent 并绘制它。但我找不到有关事物几何形状的详细信息。我可以知道整个小部件的 rect() 但你怎么知道小部件矩形中第一个刻度线或最后一个刻度线的位置? (跟踪 channel 的左侧和右侧有一个边距)。还是“ handle ”的矩形?

最佳答案

感谢回复中的提示。经过一些调查,这似乎有效。对于对某人有用的情况:

QStyleOptionSlider opt;
slider->initStyleOption(&opt);

QStyle *styl=style();
Rect rectHandle=styl->subControlRect(QStyle::CC_Slider, &opt, QStyle::SC_SliderHandle, NULL);
Rect rectGroove=styl->subControlRect(QStyle::CC_Slider, &opt, QStyle::SC_SliderGroove, NULL);

int avl=styl->pixelMetric(QStyle::PM_SliderSpaceAvailable, &opt, this); // width in an horizontal slider of the groove (width of widget - margins)

关于qt - QSlider (Qt) 的自定义绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18055748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com