Nasıl bir hat (sadece metin) tam genişliğini vurgulamak için bir JEditorPane alabilirim?

oy
4

Ben Görüntülenen çizgi tam genişliğinde vurgulamak için bir JEditorPane almaya çalışıyorum. Ben sadece denedim tüm örnekler metin içeriği vurgulayın. Mesela ben bu gibi içerik varsa:

 ---------------------------------
|Here is some text                |
|some more text                   |
 ---------------------------------

Yukarıdaki kutu ile temsil edilen bir JEditorPane içinde, daha sonra, yalnızca ilk satır vurgular vurgulama ([ve] aşağıdaki arasında gösterilir) 'Bazı metin'.

 ---------------------------------
[Here is some text]               |
|some more text                   |
 ---------------------------------

Aşağıdaki gibi bir JEditorPane tam genişliğini vurgulamak için istiyorum:

 ---------------------------------
[Here is some text                ]
|some more text                   |
 ---------------------------------

Bunu yapmanın bir yolu var mı?

Oluştur 09/12/2008 saat 18:03
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
4

Bu çok karmaşık değil gibi görünüyor. Biraz o yapacak kod meydan .

Sadece DefaultHighlighter uzanan, kendi özel Vurgulayıcı'yı oluşturun.

Geçersiz kıl paint()yöntem ve değişmeden dikdörtgen boya genişliği bırakın: panelin genişliği olacaktır.

Sen bulacaksınız DZone Snippet'lardaki eksiksiz bir örnek : kopyalayın ve çalıştırın. Bu Sonra ne olursa söyle. Bu içerir textPane.setSelectionColor(new Color(1.0f, 1.0f, 1.0f, 0.0f));Eğer cevap söz eklenmesini.

alt metni http://www.freeimagehosting.net/uploads/94a3a990e4.png

Cevap 09/12/2008 saat 22:23
kaynak kullanıcı

oy
1

VonC çözümüyle müdahale vurgulayarak seçimini önlemek için I (esasen seçim vurgulamak görünmez yapma) TextHighlight yapıcı aşağıdaki satırı eklendi:

textPane.setSelectionColor(new Color(1.0f, 1.0f, 1.0f, 0.0f));
Cevap 11/12/2008 saat 16:52
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more