自定义滑块小部件与wxPython

8

I would need to make a

slider = wx.Slider(self, 100, 25, 1, 100, (30, 60), (250, -1), wx.SL_HORIZONTAL)

输入图像描述

需要具有透明背景(因为它出现在具有不均匀背景的面板上)。

更一般地说,如何将其外观更改为类似于此类内容?

输入图像描述

(如果需要,我可以使用 .png 文件作为小部件元素。)

1个回答

4
不,wxWidgets使用本地的外观和控件,而在Windows下,本机控件的外观类似于您顶部的截图,而不是底部的截图。如果您想要自定义外观,则确实需要使用自定义控件。

еҘҪзҡ„пјҢжүҖд»ҘжҲ‘йңҖиҰҒйҖҡиҝҮеӯҗзұ»еҢ–wx.PyControlпјҲжҲ–е…¶д»–жҺ§д»¶пјҹе“ӘдёҖдёӘпјҹпјүжқҘеҲӣе»әиҮӘе·ұзҡ„жҺ§д»¶пјҢ并иҮӘе·ұиҝӣиЎҢз»‘е®ҡд»Ҙ移еҠЁж»‘еқ—еӣҫеғҸпјҹ дҪҶй—®йўҳд»Қ然еӯҳеңЁпјҡеҰӮдҪ•дёәwx.PyControlе®һзҺ°йҖҸжҳҺеәҰпјҹ - Basj
请查看wxWidgets发行版中的samples/erase/erase.cpp。请注意,不幸的是,在所有平台下都不支持子窗口透明度。 - VZ.
那么,在所有平台上工作的情况下,有一个良好解决方案(拥有 wx.PyControl 小部件且不具备黑色或白色矩形背景,而是与其父窗口融合)是什么? - Basj
我可以构建一个自定义的小部件:1个wx.StaticBitmap用于水平线+1个位图用于移动部分的圆圈(这种类型的wx对象是什么?我想不是StaticBitmap...)...如何使得移动部分成为圆形而不是矩形? - Basj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接