Добавление фона в jButton (построитель графического интерфейса NetBeans) - PullRequest
1 голос
/ 06 марта 2012

Когда я пытаюсь добавить фон в Jbutton в java, зайдя в его свойства и затем значок, он устанавливает фон кнопки, но текст, который я написал на кнопке, перемещается вправо (за пределы области кнопки). Какое решение для этого?

Ответы [ 3 ]

11 голосов
/ 06 марта 2012

Если вы хотите добавить изображение в JButton с помощью NetBeans, выполните следующие действия:

  1. Щелкните правой кнопкой мыши Source Packages, под Projects и выберите New -> Other -> (Under Categories) Select Other -> (Under File Types) Select Folder.
  2. Нажмите Далее и укажите имя для папки. Например, resources, убедитесь, что для Parent Folder src записано внутри поля. Теперь нажмите Готово.
  3. Теперь вручную перейдите в это место на вашем компьютере и создайте новую папку, скажем изображения, а затем вставьте IMAGE в эту папку.
  4. Теперь в разделе Design Mode выберите свой JButton и на правой стороне перейдите к свойствам JButton. Прямо под передним планом вы увидите, что написано icon, нажмите кнопку Eclipse, связанную с ним, чтобы открыть окно, как показано на рисунке ниже: FIGURE 1
  5. Проверьте эту РИСУНОК 1, чтобы ввести свои значения, а затем нажмите OK

Вы закончили добавление изображения в JButton. Если вы хотите использовать изображение, которое я использовал, здесь это Window Image. Да, я забыл упомянуть, для этого я установил HorizontalTextPosition = CENTER и veritcalTextPosition = BOTTOM в разделе «Другие свойства» внутри свойств.

И вот результат всего этого:

CELSIUS CONVERTER IMAGE

1 голос
/ 07 марта 2012

Какое решение для этого?

Одно «решение» 1 это написать текст на изображении. Это не очень хорошее решение, так как:

  • Текст должен быть написан на каждом значке, используемом для кнопки (например, обычный, пролонгированный, выбранный и т. Д.).
  • В таком случае вам будет необходимо выбрать подходящий шрифт face & size.
  • Текст не будет автоматически изменять шрифт или размер при изменении PLAF.
  • Такие вещи, как мнемоника и ускорители, не будут работать с кнопкой изображения-текста.

  1. Только при написании пунктов стало яснее, насколько странным было бы работать.
1 голос
/ 06 марта 2012

Насколько я понимаю, вы не устанавливаете фон, но вы устанавливаете значок для кнопки этим. И именно поэтому вы видите изображение на правой стороне и текст на левой стороне. Чтобы добавить изображение в качестве фона для кнопки, вам нужно переопределить paintComponent(g) метод JButon и нарисовать на нем свое изображение.

...