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


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0316
てんoncmd とウィンドウの関係について5解決


てん

リンク

2017/3/16(Thu) 17:21:57|NO.78552

いつも大変お世話になります。

以下のスクリプトでそれぞれのウィンドウに結果を表示させるにはどうすれば良いでしょうか。
(そもそも、ジャンプ先のrepeat 5での判別もが妥当なのかどうか分かっていません。併せてご指南いただけますと幸いです)


#define ctype HIWORD(%1) (%1 >> 16 & $FFFF) repeat 5 screen cnt,200,200 list_txt(cnt)=""+cnt+"\n"+cnt+"\n"+cnt ListBox list(cnt),100,list_txt(cnt) hListbox(cnt) = objinfo(stat, 2) oncmd gosub*リストクリック,$111 loop stop *リストクリック color 255,255,255 boxf color pos 0,120 repeat 5 if lparam = hListbox(cnt) { if HIWORD(wparam) = 1 { sendmsg hListbox(cnt), $188 mes "インデックス番号: "+stat return } return } loop return



この記事に返信する


てん

リンク

2017/3/16(Thu) 18:12:33|NO.78553

あ、gselすればいいのかな…


if lparam = hListbox(cnt) { gsel cnt,1

でも、適当にクリックしてるとエラーが出るので、
根本的に間違っているような。

自己レスすみません、
引き続きよろしくお願いいたします。



スペース

リンク

2017/3/16(Thu) 19:26:55|NO.78554

あまり自信はありませんがどうでしょう?

#define ctype HIWORD(%1) (%1 >> 16 & $FFFF) repeat 5 screen cnt,200,200 list_txt(cnt)=""+cnt+"\n"+cnt+"\n"+cnt ListBox list(cnt),100,list_txt(cnt) hListbox(cnt) = objinfo(stat, 2) oncmd gosub*リストクリック,$111 loop stop *リストクリック repeat 5 if lparam = hListbox(cnt) { if HIWORD(wparam) = 1 { gsel cnt,1 color 255,255,255 boxf color pos 0,120 sendmsg hListbox(cnt), $188 mes "インデックス番号: "+stat break } } loop return



てん

リンク

2017/3/16(Thu) 19:54:36|NO.78555

スペース様

早々のご回答ありがとうございます。
returnする前にbreakですね。
納得しました。

エラーもなくなったようなので解決とします。
ありがとうございました。



掘木

リンク

2017/3/16(Thu) 20:48:25|NO.78556

解決済みだけども…
oncmdによって割り込みが発生した場合、ウィンドウIDをginfo_intidで取れるよ。



てん

リンク

2017/3/16(Thu) 22:03:59|NO.78558

掘木さま
補足ありがとうございます。

あぁ…読んでるつもりで読めてないリファレンス(汗
repeatも不要に出来ました。
ありがとうございました。


*リストクリック id=ginfo_intid;ginfo(24) if lparam = hListbox(id) { if HIWORD(wparam) = 1 { gsel id,1 color 255,255,255 boxf color pos 0,120 sendmsg hListbox(id), $188 mes "インデックス番号: "+stat } } return



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