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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0227
kaiコンボボックスの内容を監視したい13解決


kai

リンク

2014/2/27(Thu) 17:54:50|NO.60297

現在http://lhsp.s206.xrea.com/command/combox.htmlに書いてあるスクリプトを変えて使用しているのですが、
このスクリプトだと選択したものがそのままに保ってしまいます。
クリックしたら、表示をHSPに戻すにはどうすればいいでしょうか?

;現在のスクリプト objmode 2 objsize 200 combox a, 100, "HSP\nTEST\nKAI" repeat wait 10 if a = 1 : goto *test if a = 2 : goto *kai loop *test dialog "test" end *kai dialog "kai" end




この記事に返信する


あり

リンク

2014/2/27(Thu) 20:24:42|NO.60301

参考にしているリンク先のページ内に答えがあるのでよく読みましょう。



kai

リンク

2014/2/27(Thu) 20:47:32|NO.60303

見てみましたが、よくわかりません!!

でも、自分で見つけ出したいので、ヒントをお願いします。



GENKI

リンク

2014/2/27(Thu) 21:04:20|NO.60304

欲しいものだけを探して拾うだけでなく、視野を広げて他にはどんなことが出来るのか知ることも大事です。
回り道に見えるかもしれませんが、長い目で見るとこれが最短ルートです。

ということで、一番上の項目から順番にサンプルを実行しつつ読んでみてください。
新しい発見の中に欲しいものは必ず見つかりますよ。



kai

リンク

2014/2/27(Thu) 21:25:24|NO.60306

頑張ってすべてのスクリプトを実行して、見つけ出しました!!

objprm 0, 0
であっていますか?



GENKI

リンク

2014/2/28(Fri) 00:22:18|NO.60311

> であっていますか?

確認はマニュアルの他に、自分で書いたスクリプトに入れてみるといいと思います。



kai

リンク

2014/2/28(Fri) 19:02:25|NO.60323

入れたんですけど、なんか変なんです!!



あり

リンク

2014/3/1(Sat) 01:30:42|NO.60343

何をどうすると、どう変になるのかが分かりませんが
オブジェクトIDの指定は正しく出来ていますか?

combox a, 24, "HSP\nTEST\nKAI" cb_id1 = stat ; コンボボックスのオブジェクトID combox b, 24, "HSP\nTEST\nKAI" cb_id2 = stat objsel cb_id1 ; コンボボックスにフォーカスを合わせる wait 100 objprm cb_id1, 1 wait 100 objsel cb_id2 wait 100 objprm cb_id2, 2



kai

リンク

2014/3/1(Sat) 07:10:59|NO.60345

inputの中の変数(URL)が1とかになってしまうんです・・・



あり

リンク

2014/3/1(Sat) 10:34:12|NO.60346

>inputの中の変数(URL)が1とかになってしまうんです・・・
input?、comboxでなくて?

スクリプトの不具合について質問する時は
『何をしたいか』『何をした』『どうなった』を必ず説明してください。
特に『何をした』が分からなければ問題点を特定する事ができません。
回答者が答えるのは『あなたがした何が間違っているのか』ですので。

要するに『そのおかしい動作をするスクリプトを張る』のが一番近道という事です。



MillkeyStars

リンク

2014/3/1(Sat) 10:43:42|NO.60347

オブジェクトを多用してるのかな?
combox の中身が変更されていなくて、input の中身が変更されちゃっているなら、ありさんが言うようにオブジェクトIDの指定にミスっている可能性が高い。

必ずオブジェクトとそのオブジェクトIDを管理する変数は、対で行ってください。

//成功例 combox a, 24, "HSP\nTEST\nKAI" cb_id1 = stat //失敗例 combox a, 24, "HSP\nTEST\nKAI" //↓IDを取得する際は、オブジェクトを作成したらすぐに取得するように。 dialog "テスト",0,"テスト" //↑IDを取得するまでに stat が変更される命令を入れないように。失敗例として dialog を含めている。 cb_id1 = stat

※objprm は、第二引数の変数型にて、変更する内容を決定している。
input を変更する場合は、数値型変数・文字列型変数共に内容その物を変更する。
combox を変更する場合は、数値型変数の場合、項目選択を変更し、文字列型変数の場合、表示内容その物を変更している。



kai

リンク

2014/3/1(Sat) 16:20:26|NO.60357

なんかよくわからないのでスクリプトを書きます!!すいません・・・

#define DIID_DWebBrowserEvents2 "{34A715A0-6587-11D0-924A-0020AFC7AC4D}" #define DISPID_COMMANDSTATECHANGE 105 #define DISPID_BEFORENAVIGATE2 250 #define DISPID_NAVIGATECOMPLETE2 252 #define DISPID_ONQUIT 253 #define DISPID_ONMENUBAR 256 #define DISPID_ONSTATUSBAR 257 #define DISPID_ONFULLSCREEN 258 #define DISPID_WINDOWSETLEFT 264 #define DISPID_WINDOWSETTOP 265 #define DISPID_WINDOWSETWIDTH 266 #define DISPID_WINDOWSETHEIGHT 267 #define DISPID_ONTHEATERMODE 260 #usecom IOleInPlaceActiveObject "{00000117-0000-0000-C000-000000000046}" #comfunc OIPAO_TranslateAccelerator 5 var #include "user32.as" #include "hspinet.as" sdim url,51 url = "http://google.co.jp/" *hometq gkenq = "" objsize 300,24 note = "お気に入り/お気に入り.txt" pos 0,2:mes " URL:" pos 0,26:mes "Kai Browser 0.1.2.0" pos 40,0:input url objsize 180,24 pos 400,0 : input gkenq objsize 180,24 pos 460,26 sdim moji a = -0 comboxtext = "機能\nページ自動更新\nフィードバックの送信" combox a, 100, comboxtext cb_id1 = stat dialog objsize 60,24 pos 160,24:button "更新",*ref pos 220,24:button "<--",*go_b pos 280,24:button "-->",*go_f pos 340,0:button "移動",*wow pos 340,24:button "+Fav",*pfav pos 400,24:button "ホーム",*hob pos 580,0:button "検索",*kensaku pos 0,48 axobj ie, "Shell.Explorer.2",640,480-48 num=stat comevent ie_event, ie, DIID_DWebBrowserEvents2,*event ie->"Navigate" url ie("Silent") = 1 *pr querycom ieOIPAO, ie, IOleInPlaceActiveObject onkey gosub *pushkey repeat wait 10 if a = 1 : goto *pag if a = 2 : goto *feed loop *main stop *kensaku gken = "http://www.google.co.jp/search?q="+gkenq+" ie->"Navigate" gken goto *main *event ; COMイベント処理 dispid = comevdisp(ie_event) if dispid = DISPID_BEFORENAVIGATE2 : gosub *OnBeforeNavigate if dispid = DISPID_NAVIGATECOMPLETE2 : gosub *OnNavigateComplete2 return *OnBeforeNavigate comevarg name,ie_event,1 objprm 0,name return *ref ie->"Refresh" goto *main *OnNavigateComplete2 pDoc = ie("Document") name = pDoc("Title") title name delcom pDoc return *wow ie->"Navigate" url goto *main *go_f ie->"GoForward" goto *main *go_b ie->"GoBack" goto *main *pfav wait 10 goto *main ;長いので省略 *hob wait 10 goto *main ;長いので省略 *exit end *pushkey if varuse(ieOIPAO) { getkey k, 17 if wparam = 'N' : k = 0 if wparam = 'O' : k = 0 if wparam = 'S' : k = 0 if (wparam == 9) | (wparam == 27) | (wparam == 46) | (wparam == 116) | k { b = 0, $100, wparam, lparam, 0, 0, 0 OIPAO_TranslateAccelerator ieOIPAO, b } } return ;以下"機能"のスクリプト //a = 1 *pag objprm cd_id1, 1 end //a = 2 *feed objprm cd_id1, 1 fed = "https://docs.google.com/forms/d/1Zm-yu4N-jfm87hhEpCGRCXu6-6c3lXF6OEGVNhXBQbc/viewform" ie->"Navigate" fed goto *hometq
こんな感じです。お願いします。



あり

リンク

2014/3/1(Sat) 16:56:25|NO.60358

objprmでのオブジェクトIDの記述が間違っています。
【cd_id1】ではなく【cb_id1】です。
初期化されていない変数には0が入るので
オブジェクトID0のinputの内容が書き換わってしまい
kaiさんの言う所の「なんか変」な事になります。

また、コンボボックスの行指定は0から始まるので
objprmで1を指定すると2番目の項目【ページ自動更新】が選択される事になり
これまた想定とは違う動作になります。


どちらもマニュアルをよく読んで命令の使い方を理解し
スクリプトを丁寧に見直していれば自力で解決できる事ですので
もう少し腰を落ち着けて経験を重ねていって下さい。



kai

リンク

2014/3/1(Sat) 17:42:59|NO.60360

ありがとうございました!!なんか変なのが直りました!!

>どちらもマニュアルをよく読んで命令の使い方を理解しスクリプトを丁寧に見直していれば自力で解決できる事ですのでもう少し腰を落ち着けて経験を重ねていって下さい。
そうですね。反省しました。



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