Avatar billede ngandrup Nybegynder
14. december 2003 - 17:17 Der er 9 kommentarer og
1 løsning

Hvordan sætter man curseren i et bestemt jTextField?

Jeg skal have curseren til at blinke i mit søge jTextField så snart man åbner søgesiden i programmet. Jeg har prøvet med

jTextField_Searchwords_input.setFocusable(true);

men det virker ikke. Nogle forslag?

Nikolaj
Avatar billede olly Nybegynder
14. december 2003 - 17:23 #1
jTextField_Searchwords_input.requestFocus();

Ellers søg på focus her:

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JTextField.html
Avatar billede _carsten Nybegynder
14. december 2003 - 17:23 #2
jTextField_Searchwords_input.grabFocus();
jTextField_Searchwords_input.setCaretPosition(0);
Avatar billede ngandrup Nybegynder
14. december 2003 - 17:35 #3
Jeg kan desværre ikke rigtig finde nogen løsning. Det var gode bud, har prøvet dem, og resten af focus-mulighederne, men det virker ikke.

Niko
Avatar billede _carsten Nybegynder
14. december 2003 - 17:37 #4
Så må det være fordi dit textfelt ikke er redigerbart

Brug denne først
setEditable(true);
Avatar billede ngandrup Nybegynder
14. december 2003 - 17:44 #5
Det er vel som standard redigerbart. Man kan jo også skrive i det..

Ud over det, så virker det stadig ikke, selvom jeg prøvede :(

Niko
Avatar billede _carsten Nybegynder
14. december 2003 - 18:21 #6
Tja, så skal vi nok se noget kode som vedrører det textfelt,
for så må det jo være måden du anvender requestFocus() på
som gør at det ikke virker
Avatar billede _carsten Nybegynder
14. december 2003 - 19:13 #7
Du ved godt at den skal fyres af som noget af det sidste du gør,
eksempelvis lige inden du kalder show();
Avatar billede _carsten Nybegynder
15. december 2003 - 11:07 #8
Jeg ved ikke om du har fået det til virke, så du får lige et eksempel

public class Test extends javax.swing.JFrame {
   
    public Test() {
        initComponents();
        jTextField3.requestFocus();
    }
   
    private void initComponents() {
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();
        jTextField3 = new javax.swing.JTextField();

        getContentPane().setLayout(new java.awt.FlowLayout());

        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        jTextField1.setColumns(10);
        getContentPane().add(jTextField1);

        jTextField2.setColumns(10);
        getContentPane().add(jTextField2);

        jTextField3.setColumns(10);
        getContentPane().add(jTextField3);

        pack();
    }
   
    private void exitForm(java.awt.event.WindowEvent evt) {
        System.exit(0);
    }
   
    public static void main(String args[]) {
        new Test().show();
    }
Avatar billede cpufan Juniormester
22. december 2003 - 23:08 #9
olly har givet dig svaret
Avatar billede _carsten Nybegynder
19. januar 2004 - 19:40 #10
Er det ved at være tid til at lukke ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester