Hallihallo,
ich möchte mir eine art Emblem machen, dass sich bei der Tastenkombination Str + F12 öffnet.
Dies soll durch einen einzelnen Befehl in anderen Klassen aufrufen lassen(natürlich muss die entsprechende class Datei im Ordner und Classpath liegen, das ist mir schon klar)
Das Problem:
Ich muss den KeyListener/Adapter ja mit in die Emblem-Klasse hineinschreiben, wie kann ich dann etwas adden, oder kann ich vielleicht sogar eine art global-KeyAdapter, der von überall gehört wird machen?
ich habe bis jetzt:
(Die Main-Klasse soll normaler Weise nicht benötigt werden, sie soll nur eine Art Demo darstellen, da ich später den JDialog noch wesentlich auffüllen möchte!)
Aus anderen Klassen, kann ich aber nix dem KeyAdapter adden, bin ich auf dem Holzweg, oder hab' ich bloß was falsch gemacht?
Also, ich stelle mir das so vor,
alles wird einfach durch den Aufruf
gestartet.
Sobald ich dann im restlichen Programm Str+F12 drücke, soll das Fenster geöffnet werden..
Hat jemand eine Idee?
MfG
MPW
ich möchte mir eine art Emblem machen, dass sich bei der Tastenkombination Str + F12 öffnet.
Dies soll durch einen einzelnen Befehl in anderen Klassen aufrufen lassen(natürlich muss die entsprechende class Datei im Ordner und Classpath liegen, das ist mir schon klar)
Das Problem:
Ich muss den KeyListener/Adapter ja mit in die Emblem-Klasse hineinschreiben, wie kann ich dann etwas adden, oder kann ich vielleicht sogar eine art global-KeyAdapter, der von überall gehört wird machen?
ich habe bis jetzt:
(Die Main-Klasse soll normaler Weise nicht benötigt werden, sie soll nur eine Art Demo darstellen, da ich später den JDialog noch wesentlich auffüllen möchte!)
Code:
import javax.swing.JOptionPane;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
class Emblem extends JOptionPane{
boolean strPressed = false;
public Emblem() {
KeyAdapter hörDochZu = new KeyAdapter() {
public void keyPressed(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.VK_CONTROL) {
System.out.println("hey");
strPressed = true;
} else if (event.getKeyCode() == KeyEvent.VK_F12) {
if (strPressed == true) {
showMyEmblem();
} else {
}
}
}
public void keyReleased(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.VK_CONTROL) {
System.out.println("buhu");
strPressed = false;
}
}
};
}
protected void showMyEmblem() {
showMessageDialog(null, "Dieses Programm wurde von Matthias P. Walther geschrieben", "Über den Author:", JOptionPane.INFORMATION_MESSAGE);
}
public static void main(String args[]) {
new Emblem().showMyEmblem();
}
}
Aus anderen Klassen, kann ich aber nix dem KeyAdapter adden, bin ich auf dem Holzweg, oder hab' ich bloß was falsch gemacht?
Also, ich stelle mir das so vor,
alles wird einfach durch den Aufruf
Code:
new Emblem();
gestartet.
Sobald ich dann im restlichen Programm Str+F12 drücke, soll das Fenster geöffnet werden..
Hat jemand eine Idee?
MfG
MPW