Чтобы иметь возможность отображать предложение, скажем, JPanel
с GridLayout(1,0)
[т.е. только одной строкой / строкой], а затем иметь возможность рисовать синтаксическое дерево (или подобное) над ним,Я хочу отобразить предложение в виде строки String
s, каждое из которых включает в себя одно слово.
Одиночные String
s должны быть либо выбраны (как в JList
), либо я долженпо крайней мере, иметь возможность получить их местоположение на JPanel
через getLocation()
.
До этого момента я пробовал следующие варианты и имел следующие проблемы: - Один String
s как JLabel
s: JLabel
s растянуты, чтобы заполнить ширину JPanel
, изменение их размера, чтобы соответствовать одному String
, которое они отображают, кажется сложным.Я хотел бы иметь возможность сделать это, однако, чтобы предложение выглядело как предложение, а не как плохо выложенная таблица.- JList
: все функции, которые мне нужны, но я не знаю, как изменить размер «ячеек» одного String
(см. JLabel
выше).Кроме того, у меня возникают трудности с ограничением отображения JList одной строкой / строкой (см. еще один из моих вопросов ).- JTextArea
: я не мог разобраться, как узнать местоположение одиночных String
s, которые я добавил к JTextArea
.
Я знаю, что drawString()
может быть вариант, но я боюсь его использовать, так как не хочу смешивать AWT и Swing.Кроме того, мне нужно будет вычислить значения int
для x
и y
для каждого String
.И я не уверен, смогу ли я вообще получить их Местоположения (хотя я, конечно, мог бы сохранить их int
на карте или векторе, так как я все равно должен их вычислять).
Благодарен за любые предложений!Спасибо!