1
我想擁有一種JSlider,它具有三種顏色,每種顏色都佔據一系列值(例如,1到10是綠色,10到20是黃色,20到30是紅色),這怎麼能實現?color java基於tick值的JSlider
我想擁有一種JSlider,它具有三種顏色,每種顏色都佔據一系列值(例如,1到10是綠色,10到20是黃色,20到30是紅色),這怎麼能實現?color java基於tick值的JSlider
編輯:
哎呀,由於某種原因,我覺得有在JComponent中一個paintBackground()
方法。我想你,而不是必須做setOpaque(false)
(這樣super
不畫背景),然後覆蓋paintComponent()
這樣的:
protected void paintComponent(Graphics g) {
int w = getWidth();
int h = getHeight();
int x1 = w/3;
int x2 = w * 2/3;
g.setColor(Color.GREEN);
g.fillRect(0, 0, x1, h)
g.setColor(Color.YELLOW);
g.fillRect(x1, 0, x2 - x1, h)
g.setColor(Color.RED);
g.fillRect(x2, 0, w - x2, h)
super.paintComponent();
}
你想有顏色的三個條紋的背景?或者您是否希望根據所選值爲其着色三種顏色之一? –
@Russell Zahniser:我希望背景有三個顏色條紋,我如何讓GradientPaint將它做到背景JPanel – user121196