Jak przenieść się do innego komponentu i HTML w JLabel i innych

0

Jak sprawić by po kliknięciu przycisku od razu sprawić by dało się pisać po JTextArea a nie by użytkonik musiał w nie klikać ?
Jak podświetlać tekst w JTextArea czy JLabel ale tak by np. dało się wyświetlić też <html> i <b> ?
Jak sprawdzić czy jakieś 2 przyciski na klawiatu<ort>ż</ort>e są wciśnięte np. "Crylt" + "H" lub "Shift" + "Enter" (wiem że chodzi o KeyListenera ale jak dokładnie to zrobić) ?
No i jak zmieniać lokalizację kursora w tekscie ?

1
Xix napisał(a):

Jak sprawić by po kliknięciu przycisku od razu sprawić by dało się pisać po JTextArea a nie by użytkonik musiał w nie klikać ?

W ActionListener przycisku:

textarea.requestFocus();
Xix napisał(a):

Jak podświetlać tekst w JTextArea czy JLabel ale tak by np. dało się wyświetlić też <html> i <b> ?

w JLabel wystarczy zacząć tekst znacznikiem <html>:

label.setText("<html>jedno słowo jest <b>pogrubione</b>, a pozostałe nie");

JTextArea nie obsługuje stylów dotyczących pojedynczego fragmentu (cały tekst jest jednolity). Taką funkcję mają klasy JTextPane i JEditorPane. HTML wyświetla się w taki sam sposób, jak wyżej, tylko należy użyć wcześniej:

component.setContentType("text/html");
Xix napisał(a):

Jak sprawdzić czy jakieś 2 przyciski na klawiatu<ort>ż</ort>e są wciśnięte np. "Crylt" + "H" lub "Shift" + "Enter" (wiem że chodzi o KeyListenera ale jak dokładnie to zrobić) ?

W KeyListener, gdy dostajesz obiekt KeyEvent e:

e.isAltDown();
e.isControlDown();
e.isShiftDown();

Przykład dla Ctrl+H:

if (e.isControlDown() && e.getKeyCode() == KeyEvent.VK_H) {
//rób coś
}
Xix napisał(a):

No i jak zmieniać lokalizację kursora w tekscie ?

textPane.setCaretPosition(5);
1

Jak w JLabel wyróżnić i wyświetlić tekst <html>? Użyj encji:

new JLabel("<html>Ten znacznik jest pogrubiony: <b>&lt;html&gt;</b> i wyświetlony</html>");
0

No pomyślałem o nich ale czy mi potem normalnie skopiuje tekst z tego i czy w JTextPane to też tak działa ?
No i czy użytkownik w JTextPane też będzie używał encji czy nie ?
no bo jak napisze < to mu wyświetli "<" czy "&lt" ?
Codzi mi o to że użytkownik może pisać w moim JTextPane w HTML a ja mu będę podświetlał.

1

Zależy, w jaki sposób chcesz kopiować.
Jeżeli użytkownik ma zaznaczyć tekst i zrobić Ctrl+C, to tak, skopiuje się. Jeśli zaś będziesz chciał to zrobić przez getText(), to będzie razem ze znacznikami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1