Comment puis-je obtenir mes NetBeans glisser-déposer widget pour savoir s'il est rendu dans la fenêtre de vue de la conception NetBeans ou l'application en cours d'exécution?
-
29-08-2019 - |
Question
Comment puis-je obtenir mes NetBeans glisser-déposer widget pour savoir s'il est rendu dans la fenêtre de vue de la conception NetBeans ou l'application en cours d'exécution?
Je suis en train de faire un rendu personnalisé. Je pense qu'il a à voir avec le conteneur racine.
La solution
Autres conseils
Ceci est une autre méthode:
Component c = javax.swing.SwingUtilities.getRoot(this);
String className = c.getClass().getCanonicalName();
if (!"org.netbeans.core.windows.view.ui.MainWindow"
.equalsIgnoreCase(className)) {
Bien que je pense que le
Beans.isDesignTime()
méthode est meilleure
Test de la
Beans.isDesignTime()
avec l'exemple suivant
package test;
import java.awt.Graphics;
import java.beans.Beans;
import javax.swing.JLabel;
public class TestLabel extends JLabel {
private static final long serialVersionUID = -2438507032083091628L;
public TestLabel() {
super();
}
public void paint(Graphics g) {
super.paint(g);
if (Beans.isDesignTime())
this.setText("Design Time");
else
this.setText("Production runtime");
}
}
Il fonctionne - c'est tout à fait incroyable.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow