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


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0814
べなりあcomboxのp2(拡張Yサイズ)について11解決


べなりあ

リンク

2008/8/14(Thu) 13:35:21|NO.18197

comboxについての質問なのですが、
p2にリスト表示のYサイズを指定すると、ヘルプには書いてありますが、
下のスクリプトを実行すると、どうみても100ピクセルには収まっていません。
画面からはみ出るほどなので…500ピクセルくらいに広がってしまいます。


sdim test,700 repeat 100 : test+="test"+cnt+"\n" : loop combox a,100,test

どうすれば希望するYサイズにすることが出来るでしょうか。
ご教授お願い致します。



この記事に返信する


レヴィン

リンク

2008/8/14(Thu) 18:46:57|NO.18228

どうすればも何も、ちゃんと100ピクセルになってますよ?

べなりあさん、「拡張Yサイズ」の意味はわかっていますか?
第2引数の値は「コンボボックスの大きさ」ではなく、
ボックスの「▼」をクリックした時に、
「下に出るウィンドウ(らしきもの)の大きさ」です。
  ↑呼び名を知らない・・・誰か教えて^^;

コンボボックス自体の大きさ指定するにはobjsizeを使います。



レヴィン

リンク

2008/8/14(Thu) 18:56:51|NO.18229

連投すいません。

http://sakuratan.ddo.jp/imgboard/img-box/img20080814185600.png
に実行画面をうpしました。



べなりあ

リンク

2008/8/14(Thu) 19:15:00|NO.18230

いえいえ、それは分かってますよ。
それでは私も画面を…
http://sakuratan.ddo.jp/imgboard/img-box/img20080814191415.jpg
ちょっとサイズ大きめですが^^;

環境で変わってしまうという事でしょうか?



べなりあ

リンク

2008/8/14(Thu) 19:18:49|NO.18231

書き忘れたので追記します。
私のOSはVistaのHomeBasicです。

この質問をするきっかけとなったことなのですが、
コンボボックスを普通に置いただけなのに、バグ報告を受けたのです。
コンボボックスをクリックしても、下にリストが伸びない…とのことだったので、
このことが問題なのかと思います。
リストが画面の一番下まで届くと、上の方にリストがはみ出ますし…
ちなみにその方はWindows2000SP4だそうです。



レヴィン

リンク

2008/8/14(Thu) 19:58:36|NO.18232

引数のことは失礼しました。

原因はhspのバージョンなんですかね? 3.2β1だから平気なのか?
と思ってアーカイブ版の3.1で試しても実行結果はうpした画像と同じだし・・・

ちなみにOSはXP SP2でクラシックスタイルです。98じゃないですよw
原因は環境依存なんですかね・・・・・・・?
俺の方ではどうやっても再現できませんでした。



inovia

リンク

2008/8/14(Thu) 20:03:51|NO.18233

どうやら、Windows Vistaではそのような動作になってしまうようです。

Windows Vista Home Premium SP1にて確認しました。
http://hinekure.ddo.jp/combox.png
(クラシックスタイルです)



べなりあ

リンク

2008/8/14(Thu) 20:50:45|NO.18236

環境の問題だと、どうしようもありませんね…
コンボボックスの代わりに出来るような、何か良い方法はないでしょうか。
もちろん環境依存しないコンボボックスが作れるなら、それほどいい事はないのですが…

引き続きご教授お願い致します。



ANTARES

リンク

2008/8/14(Thu) 20:51:55|NO.18237

>「下に出るウィンドウ(らしきもの)の大きさ」です。
>  ↑呼び名を知らない・・・誰か教えて^^;
 「プルダウンメニュー」かな?



Kpan

リンク

2008/8/14(Thu) 20:54:48|NO.18238

旧HSP3掲示板(過去ログ4)で出ててきてますが、OSにより挙動が異なってしまう
パラメータです。

当時の「XP+HSP3製実行ファイル(ビジュアルスタイル対応)」の組み合わせで、
反映できる数値というのが限定されてしまう仕様があります。

自分の環境はXPですが、CB_SETHORIZONTALEXTENTでも制御できんです。
Vistaでもまた挙動が違うんですかいな・・・。(^^;



Kpan

リンク

2008/8/14(Thu) 22:15:01|NO.18259

何か方法ないかいな、とMSDN見てみてみたら、
新しいメッセージがあるとはしらなんだ・・・(^^;
http://msdn.microsoft.com/en-us/library/bb775915.aspx
http://lhsp.s206.xrea.com/command/combox.html


#include "user32.as" sdim data, 512 i = 0 repeat 50, 1 poke data, i, "項目 "+cnt+"\n" i + strsize loop combox a, 100, data hCombox = objinfo(stat, 2) // CB_SETMINVISIBLE PostMessage hCombox, $1701, 23, 0



べなりあ

リンク

2008/8/14(Thu) 22:25:13|NO.18260

そんな方法があるんですね!
無事、こちらでも反映されました。

非常に参考になりました。
レスして頂いた皆様、本当にありがとうございました!



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