netbeans ドラッグ アンド ドロップ ウィジェットに、それが netbeans デザイン ビュー ウィンドウ内でレンダリングされているのか、それとも実行中のアプリケーション内でレンダリングされているのかを認識させるにはどうすればよいですか?
カスタム レンダリングを実行しようとしています。ルートコンテナに関係していると思います。
netbeans ドラッグ アンド ドロップ ウィジェットに、それが netbeans デザイン ビュー ウィンドウ内でレンダリングされているのか、それとも実行中のアプリケーション内でレンダリングされているのかを認識させるにはどうすればよいですか?
カスタム レンダリングを実行しようとしています。ルートコンテナに関係していると思います。
これは別の方法です:
Component c = javax.swing.SwingUtilities.getRoot(this);
String className = c.getClass().getCanonicalName();
if (!"org.netbeans.core.windows.view.ui.MainWindow"
.equalsIgnoreCase(className)) {
と思いますが、
Beans.isDesignTime()
方法の方が良い
のテスト
Beans.isDesignTime()
次の例で
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");
}
}
それは機能します - それは非常に信じられないほどです。
java.beans.Beans.isDesignTime()を試してください。