再現頻度:1時間ほど画面のオープンクローズを繰り返しつづけて1回出るか出ないかです。
| <発生環境> | |
|---|---|
| OS | Windows98 |
| JDK | JDK1.3 |
| Vender | Sun |
- <A8-1>
- 原因不明です。
仕様として、「画面を開いた際のデフォルトフォーカス」というものを設け、setVisibleされた際に必ずそのコンポーネントにフォーカスを当てることで解決できます。
再現頻度:1時間ほど画面のオープンクローズを繰り返しつづけて1回出るか出ないかです。
| <発生環境> | |
|---|---|
| OS | Windows98 |
| JDK | JDK1.3 |
| Vender | Sun |
たとえば、マウスカーソルがテキストフィールドにある状態で、上記のように使用不可にしても、テキストが入力できてしまいます。
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
Look&FeelがWindowsの場合のみに発生します。
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
しかし、再描画を行うと、カーソルは消えます。
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | Windows2000/NT |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | WindowsNT4 |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | Windows2000 |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | WindowsNT4,WindowsXP |
| JDK | JDK1.3,JDK1.4 |
| Vender | Sun |
以下の設定が行えません。
javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
| <発生環境> | |
|---|---|
| OS | Solaris |
| JDK | JDK1.3.1 |
| Vender | Sun |
発生する例外は以下の通りです。
java.lang.NullPointerException
at javax.swing.JTree.getPathForLocation(JTree.java:1702)
at javax.swing.JTree.getRowForLocation(JTree.java:1721)
at javax.swing.JTree.getToolTipText(JTree.java:1009)
at javax.swing.ToolTipManager.mouseMoved(ToolTipManager.java:522)
(以下省略)| <発生環境> | |
|---|---|
| OS | WindowsNT4 |
| JDK | JDK1.3.1 |
| Vender | Sun |
日本語など、IMを介して文字を入力する場合に発生します。
| <発生環境> | |
|---|---|
| OS | WindowsNT4 |
| JDK | JDK1.3 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | Windows98SE / WindowsXP |
| JDK | JDK1.3 / JDK1.4 |
| Vender | Sun |
| <発生環境> | |
|---|---|
| OS | any |
| JDK | any |
| Vender | any |
JFrame frame;
frame.getContentPane().setBackground(<RGB>);
| <発生環境> | |
|---|---|
| OS | any |
| JDK | any |
| Vender | any |
JLabel label;
label.setOpaque(true);
label.setBackground(<RGB>);ウィンドウをフルスクリーンで表示したいのですが、JFrameを使用するとタイトルバーが表示されてしまいます。
タイトルバーのないフルスクリーン画面は実現できないのでしょうか?
| <発生環境> | |
|---|---|
| OS | Any |
| JDK | 1.4 |
| Vender | Any |
public class FullScreenTestVer
{
public static void main(String args[])
{
JWindow window = new JWindow()
{
public void paint(Graphics graphics)
{
graphics.setColor(Color.blue);
graphics.setFont(new Font(null, Font.BOLD, 80));
graphics.drawString("Hello, World!", 40, 100);
}
}; //(1) JWindowを継承して全画面表示したいウィンドウを作成する。
testGraphicsDevice(window);
}
/**
* 指定したウィンドウを、フルスクリーン排他モードに設定する。
* @param window 表示するwindow
*/
private static void testGraphicsDevice(Window window)
{
// (2) GraphicsEnvironmentを取得する。
GraphicsEnvironment graphicsEnvironment =
GraphicsEnvironment.getLocalGraphicsEnvironment();
// (3) GraphicsEnvironmentからGraphicsDeviceを取得する。
GraphicsDevice graphicsDevice = graphicsEnvironment.getDefaultScreenDevice();
// (4) フルスクリーン排他モードに変更する。
graphicsDevice.setFullScreenWindow(window);
try
{
Thread.sleep(3000);
}
catch (InterruptedException iex)
{
;
}
// (5) フルスクリーン排他モードを解除する。
graphicsDevice.setFullScreenWindow(null);
System.exit(0);
}
}Java2Dを使用したアプリケーションを作成していますが、
実行中、コンソールに以下のメッセージが表示されて、終了してしまいます。
# EXCEPTION_ACCESS_VIOLATION (0xcFF00005) at pc=0x6d1c5c68, pid=2608, tid=2140
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0-b64 mixed mode, sharing)
# Problematic frame:
# C [dcpr.dll+0x5c68]
#
# An error report file with more information is saved as hs_err_pid2608.log| <発生環境> | |
|---|---|
| OS | Windows XP SP2 |
| JDK | 5.0 Update4 |
| Vender | Sun |
BufferedImage im = new BufferedImage(640, 480,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = im.createGraphics();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
GeneralPath path = new GeneralPath();
path.moveTo(0, 0);
path.lineTo(634, 57);
path.lineTo(640, 65);
path.closePath();
g2d.draw(path);
現状、根本的な解決方法はありません。Swingを利用して、「画面消去→sleep→再描画」という処理を行ったのですが、 再描画処理を行いません。
public void redraw(int x, int y){
// 消去処理
this.initialize();
this.view_.getFrame().repaint();
// sleep処理
Thread.sleep(1000);
// 描画処理
Rectangle2D rectangle = new Rectangle2D.Double(x, y, 1, 1);
・・・
this.view_.getFrame().repaint();
}| <発生環境> | |
|---|---|
| OS | Any |
| JDK | JDK5.0以降 |
| Vender | Sun |
注意:本文書の内容に誤りがあり、またこの文書によって不利益を被っても、
エスエムジー株式会社は一切関知いたしません。