Key Pressed nefunguje – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Key Pressed nefunguje – Java – Fórum – Programujte.comKey Pressed nefunguje – Java – Fórum – Programujte.com

 

Johnn195
~ Anonymní uživatel
15 příspěvků
8. 6. 2013   #1
-
0
-

Dobrý den,

V Javě jsem začal teprve nedávno, takže se v ní ještě úplně neorientuji a narazil jsem na problém, který nejsem schopen vyřešit sám.

Nějak mi nejde, aby mi fungoval KeyPressed. V současné době to tak testuji, takže se momentálně snažím docílit toho, aby se mi při stisku klávesy M zvedala proměnná, kterou jsem si deklaroval, o jednu hodnotu.

Kód zde:

public class menuGUI extends javax.swing.JFrame {

    /**
     * Creates new form menuGUI
     */
    public int hrX = 0;
    public menuGUI() {
        initComponents();
         this.addKeyListener(ka);
    }

    KeyAdapter ka = new KeyAdapter(){
        public void KeyPressed(KeyEvent e){
            if(e.getKeyCode() == KeyEvent.VK_M){
                hrX =+ 1;
            }
        }
    };
}

Nic se mi nepodtrhává, žádný error, ale prostě to nefunguje a za boha nejsem schopen přijít na to, kde bych tam mohl mít chybu, nebo co by mi tam mohlo chybět. Proto prosím o nějakou radu.

Nahlásit jako SPAM
IP: 195.26.25.–
zlz
~ Anonymní uživatel
634 příspěvků
8. 6. 2013   #2
-
0
-

Ta metoda se jmenuje keyPressed (s malým k) a přičítání je +=.

Pokud přepisuješ nějakou metodu, tak můžeš použít anotaci @Override a IDE/překladač pak pohlídá, jestli opravdu něco přepisuješ/implementuješ. Ty jsi takhle vytvořil novou metodu, která se nikde nepoužívá.

@Override
public void blabla...
Nahlásit jako SPAM
IP: 78.156.159.–
Johnn195
~ Anonymní uživatel
15 příspěvků
8. 6. 2013   #3
-
0
-

Díky za rady. Kód jsem tedy přizpůsobil do této podoby, ale stále nechce fungovat   

 

public class menuGUI extends javax.swing.JFrame {

    /**
     * Creates new form menuGUI
     */
    public int hrX = 0;
    public menuGUI() {
        initComponents();
        this.addKeyListener(ka);
    }

    KeyAdapter ka = new KeyAdapter(){
        @Override
        public void keyPressed(KeyEvent e){
            if(e.getKeyCode() == KeyEvent.VK_M){
                hrX += 1;
            }
        }
    };
}
Nahlásit jako SPAM
IP: 195.26.25.–
zlz
~ Anonymní uživatel
634 příspěvků
9. 6. 2013   #4
-
0
-

Podle initComponents() tipuju, že na tom frame máš nějaké komponenty a stisky kláves jdou některé z nich. Jinak mě nic nenapadá.

Nahlásit jako SPAM
IP: 80.188.216.–
Johnn195
~ Anonymní uživatel
15 příspěvků
9. 6. 2013   #5
-
0
-

Díky moc. Naprostá pravda. Mám to jako třídu JFrame ve které jsem měl i nějaké objekty(jButton), když jsem je odstranil, tak už to pracuje jak má :)

Ale ještě bych měl jednu otázku. Když totiž nějaké objekty znovu přidám, tak to opět nefunguje. Je nějaká možnost jak tam mít ty objekty, a aby mi v tom zároveň nedělaly tu paseku?

Nahlásit jako SPAM
IP: 195.26.25.–
zlz
~ Anonymní uživatel
634 příspěvků
Nahlásit jako SPAM
IP: 80.188.216.–
Johnn195
~ Anonymní uživatel
15 příspěvků
9. 6. 2013   #7
-
0
-

Ok, vyřešeno.

Děkuji moc, opravdu jsi mi velmi pomohl :)

Nahlásit jako SPAM
IP: 195.26.25.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 9 hostů

Podobná vlákna

FOREIGN KEY — založil JK

Problem s foreign key — založil Domino4444

Press any key to continue. — založil barnabas_666

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý