Micronate
-
Gesamte Inhalte
5 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Micronate
-
-
Erst mal vielen Dank für die schnelle Antwort.
Ich hab mich glaub ich falsch ausgedrückt. Ich habe nur 1 Fenster. Es soll kein 2. erscheinen. Wenn ich auf den StartButton klicke soll das andere Programm das die Abfrage macht im Hintergrund laufen und mir durch die JProgressbar anzeigen wann es fertig ist. Das Programm schreibt 3 HTML-Dateien die mir sagen welche IP nicht/erreicht wurde und z.B. wie viele Ausdrucke der Drucker hat. Die IP-Adressen liest es aus einer .txt-Datei.
Das mit Component.show() muß ich erst nachlesen, da wir in der Schule(mach noch Ausbildung zum FISI) noch kein Java Swing und JFrame durchgenommen haben. Ich hab mir alles was mit Swing und JFrame zu tun hat einfach aus Beispielen zusammen geschustert. In erster Linie wollt ich wissen was in dem Code falsch positioniert ist weswegen das Fenster nicht angezeigt wird.
Und was mir dann gerade beim ausprobieren des Codes aufgefallen ist. Folgenden Code solltest du nochmal überarbeiten.Code:
//Image in Titelleiste
Toolkit tk = gui.getToolkit();
Image image = tk.getImage( "printer.GIF" );
while ( !tk.prepareImage( image, -1, -1, gui))
{
try {
Thread.sleep( 100 );
} catch ( Exception e ) {}
}
gui.setIconImage( image );
//Image in Titelleiste
Weil wenn wie bei mir das Bild nicht vorhanden ist, dann läuft er dort in einer Endlosschleife immer weiter.
Wie meinst Du das mit der Endlosschleife. Wie zeigt sich das bei Dir?
-
Hallo,
Vorab schon mal ich habe nicht die mords Ahnung von Java und einige Sachen sind bestimmt auch nicht gerade toll gelöst
Info zu meinem Programm:
Ich habe das Programm auf 3 Klassen aufgeteilt. Die Klassen für das Fenster, Abfrage und eine Klasse die mir vorab schon eine HTML-Datei erstellt mit dem aktuellen Datum im Namen in das später durch das Abfrageprogramm weitere Daten hinengeschrieben wird. Hierbei handelt es sich um eine Abfrage bestimmter Werte von Druckern die in einem deutschlandweitem Netzwerk eingebunden sind.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class LexStatsHaupt extends JPanel
{
//Statusbalken
JProgressBar bar = new JProgressBar( 0, 1000000 );
//Statusbalken
//Listener für Exit/Abbruch
static class ButtonListener2 implements ActionListener
{public void actionPerformed( ActionEvent e )
{System.exit(0);}};
//Listener für Exit/Abbruch
//Listener für Statusbalken
public class ButtonListener implements ActionListener
{public void actionPerformed( ActionEvent e )
{new Thread( new Runnable()
{public void run()
{for ( int i = 1; i <= bar.getMaximum(); ++i )
{final int j = i;
SwingUtilities.invokeLater( new Runnable()
{public void run(){bar.setValue( j );}
});
}
}
}).start();
}
}//Listener für Statusbalken
public LexStatsHaupt() throws Exception
{
try
{
//Fenster
JFrame gui = new JFrame();
gui.setSize(400,300);
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gui.setTitle("Druckerabfrage zu Lexmark X644e");
//Fenster
//Image in Titelleiste
Toolkit tk = gui.getToolkit();
Image image = tk.getImage( "printer.GIF" );
while ( !tk.prepareImage( image, -1, -1, gui))
{
try {
Thread.sleep( 100 );
} catch ( Exception e ) {}
}
gui.setIconImage( image );
//Image in Titelleiste
//Buttons, Checkboxen, Bild und Panels
JButton scan = new JButton("Start");
scan.addActionListener( new ButtonListener() );
JButton exit = new JButton("Exit");
exit.addActionListener( new ButtonListener2() );
JButton abbruch = new JButton("Abbruch");
CheckboxGroup cbg = new CheckboxGroup();
Checkbox zehn = new Checkbox("17er Netz",cbg,true);
Checkbox dreisig = new Checkbox("37er Netz",cbg,false);
Checkbox fuenfzig = new Checkbox("51er Netz",cbg,false);
JPanel pnlNorth = new JPanel(new FlowLayout());
JPanel pnlSouth = new JPanel(new FlowLayout(FlowLayout.RIGHT));
JLabel imageLabel= new JLabel(new ImageIcon("printer.gif"));
gui.getContentPane().add(imageLabel);
pnlNorth.add(zehn);
pnlNorth.add(dreisig);
pnlNorth.add(fuenfzig);
gui.add(pnlNorth,BorderLayout.NORTH);
pnlSouth.add(scan);
pnlSouth.add(abbruch);
pnlSouth.add(exit);
pnlSouth.add(bar, FlowLayout.LEFT);;
gui.add(pnlSouth,BorderLayout.SOUTH);
//Buttons, Checkboxen, Bild und Panels
//Sichtbarkeit des Fensters
gui.show();
//Sichtbarkeit des Fensters
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void main(String args[])
{
try
{
new LexStatsHaupt();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
Ich habe noch ein Bild des Fensters angehängt wie es mit dem alten Code ausgesehen hat.
Problem 1)
Ich habe ein selbst geschriebenes Programm "Abfrage" das ich in einem Fenster über einen Button in diesem Fenster starten will. Ich habe das Fenster soweit fertig gecodet und wollte es in einen "schönen Rahmen" bringen weil ich in dem Test viele Methoden und Zeug immer wieder mit "//" als Kommentar ausgegrenz habe. Im neuen "schön geschrieben" Code habe ich das Fenster in einem extra Konstruktur geschrieben und diesen in der Main aufgerufen. Im alten Code war das komplette Fenster in der Main codiert. Nun habe bei dem neuen Code das Problem dass das Fensterprogramm zwar läuft, aber das Fenster nicht anzeigt wird oder kein Inhalt vorhanden ist. Ich habe schon versucht die "gui.show()" an verschiedene Stellen zu setzen und weis im Moment aber nicht mehr weiter.
Problem 2)
Wie man im Code sehen kann habe ich einen ButtonListener für den StartButton der die Statusleiste startet. Hierbei weis ich nun nicht wie und wo ich einbinde das er das Abfragerogramm startet und wie ich die Statusleiste dazu verknüpfe. Wenn ich auf Start klicke wird die Statusleiste ausgeführt und läuft in ca. 10sec. durch auf 100%. Nun braucht das eigentliche Programm viel viel länger als 10sec. Hier muß man doch irgendwie abfragen können wie weit das Programm ist oder?
Danke für Eure Antworten schon mal im Voraus. Wenn ich Infos vergessen haben sollte einfach nochmal nachfragen
-
Das mit der mittleren Reife sagte mir der Sachbearbeiter vom Arbeitsamt und in den meisten Jobbeschreibungen steht das auch. In meiner Gesellenablschussprüfung habe ich einen Durschnitt von 2,4, damals sagte man mir auch das dies eine Qualifikation für einen Abschluss der mittlern Reife wäre, aber der Sachbearbeiter vom AA sagte mir das dies auf einem der Zeugnisse vermerkt sein müßte (was leider nicht der Fall ist).
-
Hallo,
da ich auf meinem alten Beruf (Stuckateur) nicht mehr arbeiten kann und mich sehr für IT Interresiere, habe ich eine krankheitsbedingte Umschulung beim Arbetsamt beantragt. Diese ist nun soweit bewilligt. Da ich aber für die Ausbildung zum FI-SI einen Realschulabschluss brauche, und ich leider nur einen Hauptschulabschluss habe, wurde mir gesagt das ich einen Eignungstest machen muss.
Nun meine frage:
Hat vielleicht schon mal jemand hier das selbe machen müssen und sind diese Tests schwer?
Ich möchte nicht auf grund eines schlechten Testergebnisses mir die Chance auf eine Ausbildung in diesem Beruf nicht verbauen, da ich gerne einen Job hätte der mir auch Spaß macht und nicht "Irgendeinen" damit ich etwas Geld verdiene.
Vielen Dank im vorraus.
2 Probleme mit GUI
in Java
Geschrieben
Nochmals Danke für Deine Hilfe.
Dass mit der Endlosschleife hab ich erledigt.
Nun bin ich immernoch am rätseln wie ich das mit der Methode mache die mir den Prozentsatz zurück gibt. Das Abfrageprogramm liest eine IP aus der .txt-Datei, dann erfragt er die verschiedenen Werte, schreibt diese in die HTML-Tabellen und fängt dann wieder von vorne an solange die Methode .nextLine != null ist.
Meine Überlegung
Schritt 1
Könnte ich einfach die Anzahl der Zeilen in der .txt auslesen, in eine Variable schreiben und dann diese Variable als Maximumwert der JProgressbar deklarieren? Also:
Wie immer schon mal Danke im Voraus