HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0216
ShaHSPLetでマウスカーソルの非表示2解決


Sha

リンク

2009/2/16(Mon) 01:31:39|NO.23427

HSPLetを使ってゲームを作ろうとしている者です。

マウスカーソルがどうにも邪魔なので消したいのですが、HSPLetではmouse命令がサポートされていません。
どうにかしてマウスカーソルを消す方法はないでしょうか?



この記事に返信する


zakki

リンク

2009/2/22(Sun) 22:31:45|NO.23566

HSPLet自体に手を入れれば次のような感じで実装できます。
mouse命令の機能のうちマウスカーソルの移動は特権が必要なのでjarに署名しないと動きません。

hsplet.function.GuiCommand.mouse(Context, Operand, int, Operand, int)

public static void mouse(final Context context, final Operand x1v, final int x1vi, final Operand y1v, final int y1vi) { final Bmscr win = (Bmscr) context.windows.get(context.targetWindow); if (hideCursor == null) { int size = 1; int[] pixels = new int[size * size]; Image image = Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(size, size, pixels, 0, size)); hideCursor = Toolkit.getDefaultToolkit().createCustomCursor(image, new Point(0, 0), "hide"); } final int x1 = toInt(x1v, x1vi, context.mouseX); final int y1 = toInt(y1v, y1vi, context.mouseY); if (x1 < 0 || y1 < 0) { if (win != null && win.component != null) { win.component.setCursor(hideCursor); } return; } if (win != null && win.component != null) { win.component.setCursor(Cursor.getDefaultCursor()); } try { Robot r = new Robot(); r.mouseMove(x1, y1); } catch (AWTException ae) { ae.printStackTrace(); } catch (SecurityException se) { se.printStackTrace(); } }



Sha

リンク

2009/2/25(Wed) 20:48:07|NO.23602

HSPLet自体に手を加えないとできないのですか・・・。
難しそうなのであきらめることとします。

zakkiさん、ありがとうございました。



ONION software Copyright 1997-2023(c) All rights reserved.