Wo ist die Eigenschaft dieses JFrames versteckt?

GunGrave01

Mitglied
Ich drucke die "READ" Taste, folgender Teil wird ausgeführt,

Java:
private void diReadButton_2ActionPerformed(java.awt.event.ActionEvent evt) {                                               
		int deviceID = 0;
		DataType.Rd4DeviceInfoWindow = true;	// dressup Firmware value for display

		try
		{
		    deviceID = Integer.parseInt( diDevIdSpinner_2.getModel().getValue().toString() );
			GUIManager.RefreshDeviceInfo_2( deviceID, devInformationFrame );

			
		/*	new MessageBoxOK( "Read OK",
					"Device ID " + deviceID + " @ " + serialMaster.params.getPortName(),
					MessageBox.IconType.INFO, this.getFrame() );	*/
                    //    ReadCompleteMsgBox.setVisible(true);
                    //    ReadCompleteMsgBox.ReadSuccessfulFrame bx = new ReadCompleteMsgBox.ReadSuccessfulFrame();
                    //    bx.setVisible(true);
                        
                       // ReadSuccessfulFrame.setVisible(true);
                        CstMsgBox box = new CstMsgBox(devInformationFrame,true);
                        box.displayCstMsgBox("Read successful, device ID" + deviceID);
                        
		}
		catch (ModbusException ex)
		{
		/*	new MessageBoxOK( "Read Failed",
					"Device ID " + deviceID + " @ " + serialMaster.params.getPortName()
					//+ "\n" + ex.getMessage()
					+ "\nPlease try again.",
					MessageBox.IconType.EXCLAMATION, null );*/
                    CstMsgBox box = new CstMsgBox(devInformationFrame,true);
                    box.displayCstMsgBox("Read failed, device ID" + deviceID);
		}
		catch (NullPointerException ex)
		{
			/*new MessageBoxOK( "Read Failed", "No device is detected",
					MessageBox.IconType.CRITICAL, null );*/
                    CstMsgBox box = new CstMsgBox(devInformationFrame,true);
                        box.displayCstMsgBox("Read failed, no device is detected !");
		}
}

dieser ActionEvent ruft Funktion, weiter unten, auf, die RefreshDeviceInfo Funktion befindet sich in der GUIManager Klasse, und mein Frame befindet sich in der deviceInformationFrame Klasse welche auch den "READ" Button Event beinhaltet.
devInfFrObject_2 is Onbjekt der Klasse deviceInformationFrame

Java:
static void RefreshDeviceInfo_2( int deviceID, JFrame frame )
			throws ModbusException, NullPointerException
	{
		AddrTbl.DeviceInfo deviceInfo;
		DataType.Type type;
		int highword = 0;

                //GUI is object of calss OsensaVieView and serialMaster is OsensaViewViews variable
		Register[] deviceInfoRegs = GUI.serialMaster.getDeviceInfo( deviceID );
		if ( DEBUG.Modbus ) FTXModbus.printRegs( deviceInfoRegs );

		// traverse through enum values in sequence
		for ( int i = AddrTbl.DeviceInfo._START.getCode() - AddrTbl.StartBase, regIdx = 0;
			  i <= AddrTbl.DeviceInfo._END.getCode() - AddrTbl.EndBase; i++, regIdx++ )
		{
			deviceInfo = AddrTbl.DeviceInfo.get( i );
			type = deviceInfo.getType();

			if ( type == DataType.Type.UNDEFINED )	
			{
				// this register has no association, skip it
			}
			else if ( type == DataType.Type.HIGHWORD )
			{
				// buffer current register to be combine with the next one, the low word
				// make this the high word by shifting it to high word position
				highword = deviceInfoRegs[regIdx].toUnsignedShort() << 16;
				//highword = 0x0282 << 16;	// test - passed
			}
			else if ( type == DataType.Type.SERIALNUM )
			{
				// current word is the low word counterpart of previous high word
				// combine the current word with the high word
				int value = highword | deviceInfoRegs[regIdx].toUnsignedShort();
				//int value = highword | 0x65DC;	// test - passed

				if ( frame == devInfFrObject_2.devInformationFrame )
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd_diFrame.get( deviceInfo ),
									  type.toGUI( value ) );
				}
				else
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd.get( deviceInfo ),
									  type.toGUI( value ) );
				}
			}
			else if ( type == DataType.Type.CHANCONFIG )
			{
				if ( frame == devInfFrObject_2.devInformationFrame )
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd_diFrame.get( deviceInfo ),
									  type.toGUI( deviceInfoRegs[regIdx].toUnsignedShort() ) );
				}
				else
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd.get( deviceInfo ),
									  type.toGUI( deviceInfoRegs[regIdx].toUnsignedShort() ) );
				}
			}
			else
			{
				// retrieve value according to DataType.Type and refresh associated component	
				if ( frame == devInfFrObject_2.devInformationFrame )
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd_diFrame.get( deviceInfo ),
									  type.toGUI( deviceInfoRegs[regIdx].toUnsignedShort() ) );
				}
				else
				{
					RefreshComponent( ComponentRegistry.DeviceInfo4Rd.get( deviceInfo ),
									  type.toGUI( deviceInfoRegs[regIdx].toUnsignedShort() ) );
				}
			}
		}
	}

mit der if Bedingung meine ich, in der RefreshDeviceInfo_2 Funktion die Zeile
else if ( type == DataType.Type.SERIALNUM ) wird noch ausgeführt, aber die folgende
if ( frame == devInfFrObject_2.devInformationFrame ) Bedingung nicht mehr,


frame und devInfFrObject_2.devInformationFrame sind beinah identisch, wie man es auch auf den Bildern oben erkennen kann, nur, dass bei dem Zweiten Bild für devInfFrObject_2.devInformationFrame der Parameter "hidden" enthalten ist (gelbe Zeile), die frame Variable hat aber diese "hidden" Eigenschaft nicht (siehe Bild nummero eins), woraus ich dann schliese, dass das der Grund ist, wieso if ( frame == devInfFrObject_2.devInformationFrame ) niemals wahr ist.


Huh, danke fürs lesen :)

Gruß
 
Zuletzt bearbeitet:
G

Gast2

Gast
frame und devInfFrObject_2.devInformationFrame sind beinah identisch, wie man es auch auf den Bildern oben erkennen kann, nur, dass bei dem Zweiten Bild für devInfFrObject_2.devInformationFrame der Parameter "hidden" enthalten ist (gelbe Zeile), die frame Variable hat aber diese "hidden" Eigenschaft nicht (siehe Bild nummero eins), woraus ich dann schliese, dass das der Grund ist, wieso if ( frame == devInfFrObject_2.devInformationFrame ) niemals wahr ist.
Das ist falsch.
Code:
frame == devInfFrObject_2.devInformationFrame
ist nur genau dann war, wenn es sich um die selben(!) Instanzen handelt. Du kannst die beiden Frames genau identisch konfigurieren, trotzdem wird der Vergleich auch dann niemals wahr werden.
 

GunGrave01

Mitglied
Das verstehe ich jetzt leider nicht so ganz. Ich rufe ja die Funktion RefreshDeviceInfo auf, der Aufruf befindet sich in der Klasse deviceInformationFrame. Als Parameter tu ich devInformationFrame, also der Name des Frames, übergeben.

Meine if Bedingung if( frame == devInfFrObject_2.devInformationFrame ) defindet sich in der GUIManager Klasse, und dafür muss ich doch ein Object der Klasse deviceInformationFrame kreieren um auf die Parameter und Funktionen der deviceInformationFrame Klasse zuzugreifen!?

Mein Objekt der Klasse deviceInformationFrame ist,
Java:
static deviceInformationFrame devInfFrObject_2 = new deviceInformationFrame();
,
ist in der GUIManager Klasse zu finden.


Was mache ich jetzt genau falsch?
 
Zuletzt bearbeitet:

GunGrave01

Mitglied
OK, es funktioniert jetzt, aber ich verstehe immer noch nicht warum. Hab folgendes geändert,

in meinem deviceInformationFrame Constructor, rufe ich den Constructor der GUIManager Klasse, welche auch die if Bedingung beinhaltet,

Java:
 public deviceInformationFrame() {
        initComponents();
        
        new GUIManager(this,9);
       
    }

der Constructor der GUIManager Klasse sieht folgendermaßen aus,

Java:
//constructor, where the object of deviceInformationFrame is //created
 GUIManager( deviceInformationFrame _GUI, int void_variable )
	{
		GUI_2 = _GUI;
	}

wenn ich jetzt den Vergleich durchführe klappt alles prima, ich komme in die if Bedingung,

Java:
if ( frame == GUI_2.devInformationFrame )

Nur meine Frage ist, warum hat es vorher nicht funktioniert, als ich ein Objekt der deviceInformationFrame Klasse direkt in der GUIManager Klasse kreiert hatte, wie in meinem vorherigen Post geschrieben steht.

Das würde mich noch interessieren.
Danke
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Eigenschaft eines JTextfiels per ActionListener ändern... Java Basics - Anfänger-Themen 2
R Eigenschaft über Parameter auslesen und ändern Java Basics - Anfänger-Themen 15
G Woher kommt diese Eigenschaft Java Basics - Anfänger-Themen 5
K Klasse mit einer Array-Eigenschaft Java Basics - Anfänger-Themen 4
P Eigenschaft eines imperativen Algo (Pseudocode) sofort erkennen Java Basics - Anfänger-Themen 1
F Alle Objekte einer Klasse nach Eigenschaft durchsuchen Java Basics - Anfänger-Themen 8
J Erste Schritte Zugriff auf Eigenschaft Java Basics - Anfänger-Themen 2
H Suche spezifische Eigenschaft von Object - sowas wie ".hashCode()" Java Basics - Anfänger-Themen 4
G Eigenschaft einer anderen Klasse Java Basics - Anfänger-Themen 5
Temsky34 Wie bekomme ich dieses Java-Warning wieder weg? Java Basics - Anfänger-Themen 2
berserkerdq2 Überprüfen ob eine Schreibberechtigung auf ein file exisitert bzw. ob man dieses file löschen kann, wie? Java Basics - Anfänger-Themen 9
F Kann mir jemand kurz dieses Programm erklären? Java Basics - Anfänger-Themen 22
cmn489 Werte beim Funktionsaufruf in ein Feld übertragen(falls dieses leer ist) Java Basics - Anfänger-Themen 1
1 Wie dieses Muster am einfachsten erkennen? Java Basics - Anfänger-Themen 32
T Methode schreiben, die einem Array ein Stringelement hinzufügt, wenn dieses noch nicht enthalten ist. Java Basics - Anfänger-Themen 6
Salvatore321 Wie kann ich dieses Zustandsdiagramm am besten Umsetzen? Java Basics - Anfänger-Themen 5
Sajeel Chattha Dieses Programm umschreiben Java Basics - Anfänger-Themen 5
M Wie erstelle ich dieses Parallelogramm??? Java Basics - Anfänger-Themen 6
P Wie kann ich die Zahlen dieses Arrays dividieren? Java Basics - Anfänger-Themen 2
G Weiß jemand wie man dieses Programm schreibt? Java Basics - Anfänger-Themen 84
A Kann mir jemand dieses Programm erklären? Java Basics - Anfänger-Themen 1
ChrisPL4Y Wieso funktioniert dieses Programm nicht? Java Basics - Anfänger-Themen 6
B Könnte jemand über dieses jurze Javaprogramm schauen? Irgendwas funktioniert mit der z-Varible nicht Java Basics - Anfänger-Themen 2
TechGirl JAVA GUI Oberfläche Umkreisung - wie heißt dieses Element? Java Basics - Anfänger-Themen 2
W Methoden Methode auf Array aufrufen, und dieses Array dabei ändern? Java Basics - Anfänger-Themen 10
Tacofan Was macht dieses "Stückchen Code"? Java Basics - Anfänger-Themen 3
Shams Kann man von einem Interface aus auf die dieses implementierende Klasse zugreifen? Java Basics - Anfänger-Themen 4
M Warum ist dieses Feld der Klasse Math immutable? Java Basics - Anfänger-Themen 7
R Wieso funktioniert dieses Array nicht? Java Basics - Anfänger-Themen 13
M Wie heisst dieses Sortierverfahren? Java Basics - Anfänger-Themen 6
G Wie nennt man dieses Konstrukt Java Basics - Anfänger-Themen 3
V Schon wieder ein kleines problem...dieses mal mit do-while loop Java Basics - Anfänger-Themen 9
F Was soll dieses Programm genau machen ? Java Basics - Anfänger-Themen 9
P OOP Wie schreib ich dieses Programm am besten? Java Basics - Anfänger-Themen 6
D Was genau bedeutet und bewirkt dieses @override? Java Basics - Anfänger-Themen 15
P Datentypen Warum würde dieses Beispiel nicht funktionieren? Java Basics - Anfänger-Themen 6
G Aus eigenem Panel dieses Löschen Java Basics - Anfänger-Themen 2
S für was steht dieses e ?? Java Basics - Anfänger-Themen 4
J Was bedeutet dieses a [i].length? Java Basics - Anfänger-Themen 3
D Wie bringe ich dieses Programm als .jar zum laufen ? Java Basics - Anfänger-Themen 12
R Image aus jar laden (dieses mal awt) Java Basics - Anfänger-Themen 19
W "Sprechen Sie Java?" suche dieses Buch gebraucht! Java Basics - Anfänger-Themen 11
G Dieses verdammte Regex Java Basics - Anfänger-Themen 2
H warum ist dieses Kontext static? Java Basics - Anfänger-Themen 5
G Dieses leidige ID Thema Java Basics - Anfänger-Themen 9
D Was ist denn dieses Jar ueberhaupt ? Java Basics - Anfänger-Themen 3
G Wie nennt man dieses Konstrukt: Vector<Object> Java Basics - Anfänger-Themen 2
N Ist dieses Problem mit Java zu lösen? Java Basics - Anfänger-Themen 7
C Warum funktioniert dieses Speichern in Array nicht? Java Basics - Anfänger-Themen 4
S Ist dieses Projekt realisierbar? Java Basics - Anfänger-Themen 2
D Warum läuft dieses Programm so langsam? Java Basics - Anfänger-Themen 5
B Split und dieses Zeichen "" Java Basics - Anfänger-Themen 3
G Was macht dieses Program ? Java Basics - Anfänger-Themen 13
L Dieses Problem nagt an meiner Würde - Argument * Java Basics - Anfänger-Themen 4
D Vereinfachung dieses Programms Java Basics - Anfänger-Themen 11
megachucky Suche ein paar gute Tutorials so wie dieses hier. Java Basics - Anfänger-Themen 4
M Wie auf ein Objekt zugreifen und dieses manipulieren? Java Basics - Anfänger-Themen 5
S Hilfe!!!! Wie ändere ich dieses Applet???? Java Basics - Anfänger-Themen 9
J Wert zwischen JFrames übergeben Java Basics - Anfänger-Themen 2
T Mehrere JFrames gleichzeitig öffnen Java Basics - Anfänger-Themen 6
K Problem mit JFrames Java Basics - Anfänger-Themen 3
M Feste Größe des JFrames - Problem mit Dimension Java Basics - Anfänger-Themen 6
M zugang zu anderen classen und Jframes Java Basics - Anfänger-Themen 3
N Erste Schritte jFrames verbinden Java Basics - Anfänger-Themen 6
N Verschiedene JFrames in einem JFrame anzeigen Java Basics - Anfänger-Themen 7
M Frage zu JFrames öffnen Java Basics - Anfänger-Themen 4
L Zwei JFrames, Variable austauschen Java Basics - Anfänger-Themen 6
V ActionListener andere JFrames auslesen Java Basics - Anfänger-Themen 17
Developer_X Action über rotes X in der Eke eines JFrames entscheiden. Java Basics - Anfänger-Themen 15
H Multiple JFrames im GUI Editor von NetBeans Java Basics - Anfänger-Themen 2
V Mehrere JFrames minimieren und wiederherstellen Java Basics - Anfänger-Themen 2
M Methods ausführen NACH Schließen eines JFrames Java Basics - Anfänger-Themen 9
C Kann man eine Spezialisierung eines JFrames in die. Java Basics - Anfänger-Themen 14
B Zusammenspiel zweier JFrames Java Basics - Anfänger-Themen 2
M Farbe der Titelleiste eines JFrames ändern Java Basics - Anfänger-Themen 6
D Mehrere JFrames in eigenen Klassen und Dateien? Java Basics - Anfänger-Themen 4
G mehrere JFrames - Problem beim Schliessen Java Basics - Anfänger-Themen 3
D Methode vor Schließen eines JFrames ausführen Java Basics - Anfänger-Themen 5
G Mehrere jFrames anzeigen lassen? Java Basics - Anfänger-Themen 5
D JFrames - Objekte übertragen Java Basics - Anfänger-Themen 18
DEvent Größe des maximierten JFrames Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben