ein JLabel I'created, die "Texta", wenn der variable Zählwert == -1,
"Text B", wenn der variable Zählwert == 0 und "TextC", wenn der variable Zählwert == 1.Ist es möglich, dass ein JLabel seinen Text abhängig von einem Variablenwert ändert?
ich habe Schaukel verwendet meine Schnittstelle zu erstellen, die Sie unter
das rote Rechteck zeigt sehen kann, wo die JLabel sein sollte.
habe ich versucht, die Schaffung 3 JLabels und Ändern des setVisible (Boolean) immer dann, wenn der variable Zählwert Bedingung gilt. Das hat nicht funktioniert, weil ich die folgende Fehlermeldung anzeigt:
Exception in thread "main" java.lang.NullPointerException bei tempconverterUI.TempConverter.main (TempConverter.java:354) C: \ Benutzer \ x \ AppData \ Lokale \ NetBeans \ Cache \ 8.1 \ Executor-Snippets \ run.xml: 53: Java zurückgegeben: 1
Und die JLabels konnten nicht an der gleichen Stelle in der GUI platziert werden (Überlappung war nicht möglich).
Ich habe mit jLabel.setText versucht(), um den Text im JLabel angezeigt zu ändern, sobald die Variable Bedingung angewandt. Ich habe einen ähnlichen Fehler wie oben (wenn nicht gleich).
Ich habe einige andere Beiträge gelesen und recherchiert weiter und festgestellt, dass einige Leute vorgeschlagen, ActionListeners gesetzt werden, aber ich bin mir nicht sicher, dass diese mit einer einfachen Variablen, im Gegensatz zu einer Komponente in der GUI arbeiten wird.
My-Code ist wie folgt:
package tempconverterUI;
import javax.swing.JOptionPane;
import messageBoxes.UserData;
import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.WString;
public class TempConverter extends javax.swing.JFrame {
public interface someLib extends Library
{
public int engStart();
public int endStop();
public int engCount();
public WString engGetLastError();
public int engSetAttribute(WString aszAttributeID, WString aszValue);
}
/**
* Creates new form TempConverter
*/
public TempConverter() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
Das Layout hier erstellt wird, gefolgt von der Temperatur convertion Methoden und unabhängige Komponente Funktionalität (was ich glaube nicht relevant ist in diesem Fall)
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/**This is where the Login form gets created*/
UserData.popUp();
/**After this the Library functions are called, which will return the variable count value*/
someLib lib = (someLib) Native.loadLibrary("someLib", someLib.class);
int startResult = lib.engStart();
System.out.println(startResult);
if (startResult < 0)
{
System.out.println(lib.engGetLastError());
}
System.out.println(UserData.getAcInput());
int setAtResult = lib.engSetAttribute(new WString("CODE"), UserData.getAcInput());
System.out.println(setAtResult);
if (setAtResult < 0)
{
System.out.println(lib.engGetLastError());
}
Und als nächstes ist das Stück Code von wo aus ich den JLabel Text zur Anzeige
int count = lib.engCount();
System.out.println(count);
if (count == -1)
{
System.out.println(lib.engGetLastError());
}
else if (count == 0)
{
}
else
{
}
new TempConverter().setVisible(true);
}
// Variables declaration - do not modify
private javax.swing.JPanel bottomPanel;
private javax.swing.JButton convertButton;
private static javax.swing.JButton button;
private javax.swing.JTextField from;
private javax.swing.JComboBox<String> fromCombo;
private javax.swing.JLabel fromLabel;
private javax.swing.JLabel title;
private javax.swing.JTextField to;
private javax.swing.JComboBox<String> toCombo;
private javax.swing.JLabel toLabel;
private javax.swing.JPanel topPanel;
// End of variables declaration
steuern soll
}
Alle mit dieser Hilfe wäre sehr geschätzt. Wenn Sie auch ein einfaches Codebeispiel hinzufügen könnten, wäre das fantastisch, da ich neu in Java bin (und im Allgemeinen Programmierung).
1) Siehe [Erkennung/Behebung für die hängende Schließklammer eines Codeblocks] (http://meta.stackexchange.com/q/251795/155831) für ein Problem, bei dem ich nicht mehr gestört werden konnte. 2) Um eine bessere Hilfe zu erhalten, sollten Sie ein [MCVE] oder [Short, Self Contained, Correct Example] (http://www.sscce.org/) veröffentlichen. –
http://stackoverflow.com/questions/15433855/how-to-create-change-listener-for-variable – xenteros
Warum auf der Erde würde eine Temperaturumwandlung UI Klassen aus dem 'com.sun.jna'-Paket benötigen? –