Вопрос по swing, java – Можем ли мы изменить стиль кнопок GTK + 2.0 в Java Swing?

2

Проблема с Java Swing - внешний вид (Metal, Nimbus, GTK ...), худший из всех по сравнению с SWT, Windows, Mac и Gnome Tool Kit, а получение хорошо выглядящих виджетов - утопист, но я спрашиваю вопрос хотя.

Мне нужно знать, есть ли возможностьtweak a JButton to look like a default GTK button. Иначе, можем ли мы дать тексту JButton стиль (например, тень)?

public class myTweakedButton extends JButton {

// Override style attributes here.

}

Вот стиль, примененный GTK к виджету кнопки:

style "button" {
    xthickness = 3
    ythickness = 3

    bg[NORMAL] = shade (1.07, "#cdcdcd")
    bg[PRELIGHT] = shade (1.09, "#cdcdcd")
    bg[ACTIVE] = shade (1.0, "#cdcdcd")
    bg[INSENSITIVE] = mix (0.25, @bg_color, "#e2e1e1")
    fg[INSENSITIVE] = "#9c9c9c"

    engine "murrine" {
        #contrast = 1.0
        border_shades = {1.04, 0.82}
        reliefstyle = 5
        shadow_shades = {1.02, 1.1}
        textstyle = 1
        glowstyle = 5
        glow_shade = 1.1
        #text_shade = 1.04
    }

Вот как выглядит Button при использовании стандартного GTK Look and Feel, предоставляемого движком Java:

Java GTK LAF button

А вот как выглядит кнопка под Linux (GTK 2.0).

GTK Button Linux

Разница в том, что в Java GTK LAF плохая подсказка к тексту, в то время как текст кнопки GTK имеет отдельную тень.

@ StefhenC :) Вот чего я боялся. Спасибо за ответ. Hanynowsky
Да ... Я уверен, что это теоретически возможно, если вы готовы потратить сотни / тысячи человеко-часов на повторную реализацию LAF. Не должно быть никаких проблем для утописта :-) Stephen C

Ваш Ответ

1   ответ
2

write own JButton

but correct way (don't reinvent the wheel) use proper Look and Feel,

possible scenario

go to Insubstantial

download code source,

import all classes to the IDE (2-15 min depends of PC HardWare)

search for folder test, there is Check.java,

run that and to try everything in JMenu Look and Feel, required download jar files for every good Custom Java Swing Look and Feels are accesible from JMenu

nothing better around, all standard and good custom Swing's Look and Feel in one JFrame

maybe better would be to use Substance together with SwingX, very good Custom implementation for Custom Swing, again nothing better around

NOTICE: SwingX required more than basic Swing knowledge, Substance (my view) required update and customize some methods in original code too

maybe easiest ways could be
Error: User Rate Limit Exceeded Hanynowsky

Похожие вопросы