Mein Programm sollte jetzt eigentlich fertig sein nur hab ich ein Proplem, es funktioniert nicht :lol: .
Und ich weiss nicht was der Fehler sein könnte aber ich weiss das der MouseListener anscheinend garnicht angesprochen wird.
Wenn ich raten müsste würde ich sagen ich müsste noch irgendwas in der Klasse Window ändern damit es funktioniert, er baut mir zumindestens schonmal ein Fenster auf so wie ich es will aber der MouseListener funktioniert irgendwie nicht
.
Eigentlich wollte ich den Quelltext nicht posten weil ich niemandem zumuten wollte sich da reinzulesen wegen mir aber ich seh keine andere Möglichkeit
.
Hier mal der Quelltext:
Und ich weiss nicht was der Fehler sein könnte aber ich weiss das der MouseListener anscheinend garnicht angesprochen wird.
Wenn ich raten müsste würde ich sagen ich müsste noch irgendwas in der Klasse Window ändern damit es funktioniert, er baut mir zumindestens schonmal ein Fenster auf so wie ich es will aber der MouseListener funktioniert irgendwie nicht
Eigentlich wollte ich den Quelltext nicht posten weil ich niemandem zumuten wollte sich da reinzulesen wegen mir aber ich seh keine andere Möglichkeit
Hier mal der Quelltext:
Code:
import java.awt.*;
import java.awt.event.*;
public class Window extends Frame{
/**
*
*/
private static final long serialVersionUID = 1L;
/**
*
*/
private MyMouseListener mml = new MyMouseListener(this);
public int y1=100;
public int mnuakt=1;
public int btnakt=1;
public Label lblUeberschrift = new Label ("");
public Button[] btn = new Button[11];
public String[] btndir = new String[11];
configRreader cfgread=new configRreader();
public Window(){
super("Window");
this.setSize(800,600);
this.setLayout(null);
this.setVisible(true);
lblUeberschrift.setText(cfgread.props[mnuakt].getProperty("mnuname", "Menu"));
lblUeberschrift.setFont(new Font("", Font.CENTER_BASELINE,20));
add(lblUeberschrift);
lblUeberschrift.setBounds(350,50,600,45);
if(lblUeberschrift.getText().equals("")){
lblUeberschrift.setVisible(false);
}
for (int i=1; i<=10; i++){
btn[i]=new Button("");
btn[i].setBounds(200,y1,400,45);
btn[i].setFont(new Font("", Font.BOLD,16));
btn[i].addMouseListener(mml);
y1+=50;
add(btn[i]);
}
lblUeberschrift.setText(cfgread.props[mnuakt].getProperty("mnuname",null));
boolean btnnull=false;
while ((btnnull==false)&&(btnakt<=10)){
String btnname=("btn"+btnakt+"name");
String btnfold=("btn"+btnakt+"fold");
btn[btnakt].setLabel(cfgread.props[mnuakt].getProperty(btnname,null));
btndir[btnakt]=cfgread.props[mnuakt].getProperty(btnfold);
if(btn[btnakt].getLabel().equals("")){
btn[btnakt].setVisible(false);
}
if((cfgread.props[mnuakt].getProperty(btnname,null)).equals(null)){
btnnull=true;
}
btnakt++;
}
//pack();
System.out.println(cfgread.props[mnuakt].getProperty("btn1fold").substring(4));
}
public static void main(String argv[])
{
Window men= new Window();
}
}
Code:
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;
public class configRreader {
/**
* @param args
*/
Properties[] props = new Properties[100];
StringBuilder sb;
boolean bool=true;
String[] list; //CFG Datei Zeilenweise
int x=1;
public configRreader(){
while (bool==true){
String str="";
try{
String filename = "menu" + (x) + ".txt";
FileInputStream fi= new FileInputStream(filename);
props[x] = new Properties();
props[x].load(fi);
fi.close();
props[x].list(System.out);
x++;
}
catch ( FileNotFoundException e ) {
System.err.println( "Keine Datei gefunden" );
bool=false;
}
catch ( IOException e ) {
System.err.println( "I/O failed." );
bool=false;
}
}
}
}
Code:
import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
import java.io.IOException;
public class MyMouseListener extends MouseAdapter {
public Window men;
public MyMouseListener(Window men)
{
this.men=men;
}
Mclicked mc=new Mclicked(this.men);
public void MouseClicked(ActionEvent e) throws IOException
{
Object obj = e.getSource();
int x=1;
while(x<=10){
if (obj==men.btn[x]){
mc.mclicked(x);
}
x++;
}
}
}
Code:
import java.awt.Button;
import java.awt.Font;
import java.io.IOException;
public class Mclicked {
public Window men;
public Mclicked(Window men){
this.men=men;
}
public void mclicked(int x) throws IOException{
String gp=("btn"+x+"fold");
if(men.cfgread.props[men.mnuakt].getProperty(gp).substring(0,4).equals("menu")){
System.out.println("menu");
men.mnuakt=Integer.parseInt(men.cfgread.props[men.mnuakt].getProperty(gp).substring(4));
men.lblUeberschrift.setText(men.cfgread.props[men.mnuakt].getProperty("mnuname",""));
for (int i=1; i<=10; i++){
men.btn[i].setLabel(null);
men.btn[i].setVisible(false);
}
men.btnakt=1;
boolean btnnull=false;
while ((btnnull==false)&&(men.btnakt<=10)){
String btnname=("btn"+men.btnakt+"name");
String btnfold=("btn"+men.btnakt+"fold");
men.btn[men.btnakt].setLabel(men.cfgread.props[men.mnuakt].getProperty(btnname,null));
men.btndir[men.btnakt]=men.cfgread.props[men.mnuakt].getProperty(btnfold);
if(men.btn[men.btnakt].getLabel().equals("")){
men.btn[men.btnakt].setVisible(false);
}
else if(true){
men.btn[men.btnakt].setVisible(true);
}
if((men.cfgread.props[men.mnuakt].getProperty(btnname,null)).equals(null)){
btnnull=true;
}
men.btnakt++;
}
}
else if(true){
System.out.println("dir");
Runtime.getRuntime().exec(men.cfgread.props[men.mnuakt].getProperty(gp));
}
}
}