Я хочу изменить внешний вид кнопки Matlab с Java. Для этого я использую приложение Findjobj. Тем не менее, из-за того, что я не знаю Java, у меня есть проблемы с правильной пользой Java-классов, что мне нужно, чтобы моя кнопка имела закругленные углы. На основании информации, найденной here), я пытался настроить кнопку с классом BorderFactory:Пользовательский внешний вид кнопки Matlab с Java
hButton = uicontrol('string','click me!');
jButton = findjobj(hButton);
jButton.setCursor(java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
jButton.setBorder(BorderFactory.createLineBorder(red,1,true));
Но это не работает. Я получил следующее сообщение об ошибке:
??? Undefined function or variable 'red'.
Error in ==> de at 4
jButton.setBorder(BorderFactory.createLineBorder(red,1,true));
EDIT: Я понимаю, что я забыл включить классы Java для цвета и LineBorder. После его исправления код выглядит следующим образом:
import java.awt.Color;
import javax.swing.border.LineBorder;
hButton = uicontrol('Style','pushbutton','String','click me!',...
'Units','normalized','Position',[0.156 0.64 0.688 0.1],'FontSize',9,...
'ForegroundColor','w','BackgroundColor','k');
jButton = findjobj(hButton);
jButton.setCursor(java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
jButton.setBorder(LineBorder(Color.white,5,true));
Однако результат по-прежнему остается для меня неспокойным. Here - последний вид. Я могу заставить углы округлить.
Пожалуйста, отредактируйте свой вопрос, чтобы включить _complete_ [sscce] (http://sscce.org/), который демонстрирует проблему, которую вы описываете. – trashgod
Спасибо за ваш комментарий. Возможно, теперь вы найдете вопрос более полным. – julian