如何解决JSlider实际在哪里绘制?
| 我只是从JSlider SourceCode看了源代码 以及是否由于模板模式而发现了很多repaint()\。 但是我的问题是我找不到绘画方法,实际上是绘画JSlider。 有人可以向我解释如何绘制此组件吗?解决方法
Swing组件通常由其关联的UI类绘制。 UI类特定于每个外观。这是使JSlider在不同平台上具有“自然”感觉甚至自定义感觉的方式。每个Swing组件都有一个UI类,JSlider具有SliderUI,它具有多种风格,例如:MetalSliderUI,WindowsSliderUI和SynthSliderUI。
您没有在JSlider中找到绘画方法,因为绘画方法位于父类JComponent中。 JComponent的绘制方法(paint,paintComponent,repaint等)进行了一些设置,但随后将工作委托给JSlider提供的UI类。在Swing中有一个完整的方法链,用于正确绘制/调整组件的大小。
如果我们知道您要做什么,我们也许可以为您提供帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。