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 ?
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);
Jak w JLabel wyróżnić i wyświetlić tekst <html>
? Użyj encji:
new JLabel("<html>Ten znacznik jest pogrubiony: <b><html></b> i wyświetlony</html>");
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 "<" ?
Codzi mi o to że użytkownik może pisać w moim JTextPane w HTML a ja mu będę podświetlał.
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.