Ben bütün scrollpanes için bu kaydırma çubuğunu tasarlamak gerekir: Java Swing ileÖzel tasarım JScollPane Java Swing
. Netbeans IDE kullanıyorum. En basit çözüm nedir?
Çok teşekkür ederim.
Selamlar
Ben bütün scrollpanes için bu kaydırma çubuğunu tasarlamak gerekir: Java Swing ileÖzel tasarım JScollPane Java Swing
. Netbeans IDE kullanıyorum. En basit çözüm nedir?
Çok teşekkür ederim.
Selamlar
Özel bir UI ayarlayarak tarafından Salıncak bileşeninin görünümünü özelleştirebilirsiniz overrode. bir kaydırma levhadaki kaydırma çubuğu durumda, MyScrollBarUI
javax.swing.plaf.basic.BasicScrollBarUI
türetilmiştir
scrollPane.getVerticalScrollBar().setUI(new MyScrollBarUI());
yok. Eğer herhangi bir Swing bileşenleri oluşturmak önce tüm kaydırma çubukları için Bunu yapmak için (sadece JScrollPane
durumlarda),
UIManager.put("ScrollBarUI", "my.package.MyScrollBarUI");
diyoruz.
public class MyScrollBarUI extends BasicScrollBarUI {
@Override
protected void paintTrack(Graphics g, JComponent c, Rectangle trackBounds) {
// your code
}
@Override
protected void paintThumb(Graphics g, JComponent c, Rectangle thumbBounds) {
// your code
}
}
Sizin kaydırma çubuğu grafiksel çok basittir, nedenle uygulamak için çok zor olmamalı:
MyScrollBarUI
, aşağıdaki yöntemleri geçersiz kılar.
Güzel cevap 'korumalı boşluğu geçersiz kılmak için emin olun çok –
teşekkür ederim genişletilmiş (veya uygulanan) vardır paintTrack (Grafik g, JComponent c Dikdörtgen trackBounds) ve '[BasicScrollBarUI] içinde paintThumb' (aynı yöntem imzası) (http://docs.oracle.com/javase/6/docs/api/javax/swing/plaf/ basic/BasicScrollBarUI.html) veya bir şey görmeyebilirsiniz. – Nateowami
BasicScrollBarUI'yi genişletmek değil, şu anda kullanılan kaydırma çubuğu UI sınıfını genişletmek mümkün değil miydi? Gibi 'scrollthar.getUI(). GetClass()' genişletir? – Bowi
1) geçersiz kılma JToolBar
2) Custom Look and Feel çoğu
kaydırma için araç çubuğundaki ilişkisi ... yani ;-) Plus (sonuçta o Pazartesi sabahı): Eğer yöntemlerini geçersiz, sınıflar – kleopatra
unutma o daha sonra bu
UIManager.put("ScrollBarUI", "my.custom.SimpleScrollBarUI");
senin SimpleScrollBarUI sınıfı gibi tüm kaydırma çubukları geçersiz kılmak için UIManager kullanmayı planlıyorsanız zorunluluk var createUI yöntemi, yani:
public class SimpleScrollBarUI extends BasicScrollBarUI {
public static ComponentUI createUI(JComponent c) {
return new SimpleScrollBarUI();
}
//...
}
i seni anlamadı. Bir scrollpane, içerdiği öğenin boyutunun tehlikeye girmesi durumunda otomatik olarak bir kaydırma çubuğu ekler. – gprathour