- PR -

候補リストコントロール(WinApp)

1
投稿者投稿内容
NORIX
常連さん
会議室デビュー日: 2004/08/31
投稿数: 30
投稿日時: 2005-01-07 15:04
お世話になってます。
.net(WinApp)で開発を行っています。
自作で候補リストコントロールを作成しました。テキストボックスに値が入力されたらテキストボックスの下にリストボックスを追加し、候補となる値をセットして表示する、というものです。
でもこれをフォームに乗せた時に、フォームからリストがはみ出てしまった時は(当たり前の話なのかもしれませんが)はみ出た部分は切れてしまいます。
これを回避して、リスト全体が表示される方法はないでしょうか。でも親フォームからはみ出すこと自体やはり無理ですかね、、、。
もしくは、同機能を提供する代替案でもありましたら、教えてください。
よろしくお願いします!!
菊池
会議室デビュー日: 2004/11/15
投稿数: 19
投稿日時: 2005-01-07 21:22
コンボボックスやDateTimePickerが実現している事のように思えますが。

 コンボボックスがどの様にそれを実現しているのか色々な方法で(SPY++使ってみるとか、Win32 SDKのメッセージリファレンスを必死に読むとか、C++とWin32 SDKでメッセージハンドラを色々書いてみるとか、色々指向錯誤してみるとか)調べてみてはいかがでしょう。

 細かい点で色々調整点はありますが、方法は存在してます。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-01-07 21:37
 親コントロール内での自分の位置と、親コントロールの大きさから、自分の大きさを決める。
Control.Bounds
Control.Top
Control.Left
Control.Parent

_________________
NORIX
常連さん
会議室デビュー日: 2004/08/31
投稿数: 30
投稿日時: 2005-01-11 18:19
菊池様、Jitta様 ありがとうございます。

>コンボボックスやDateTimePickerが実現している事
作成中の候補リストコントロールはSystem.Windows.Forms.TextBoxを継承して作成しています。キーの押下イベントでリストをテキストボックスの下に表示するというものです。でも、コンボボックス利用したほうがよさそうですね。調べてみます。

>親コントロールの大きさから、自分の大きさを決める。
これで制御して親フォームから出ないようにするという方法ですね。もしくはサイズをみて下に表示する際切れそうだったら、上に表示するということもできそうです。参考にさせていただきます!
よねKEN
ぬし
会議室デビュー日: 2003/08/23
投稿数: 472
投稿日時: 2005-01-15 02:01
引用:

NORIXさんの書き込み (2005-01-07 15:04) より:
でもこれをフォームに乗せた時に、フォームからリストがはみ出てしまった時は(当たり前の話なのかもしれませんが)はみ出た部分は切れてしまいます。
これを回避して、リスト全体が表示される方法はないでしょうか。でも親フォームからはみ出すこと自体やはり無理ですかね、、、。



単なるリストボックスではなく、
枠なしのフォームに載せたリストボックスにしてはいかが?

--
(追記)
VS.netなどのインテリセンス機能のようなものをやろうとしているのかな?
と思ったけど、どちらかというとオートコンプリート機能のような感じですか?
もしそうならオートコンプリートやAutoCompleteで調べてみてもよいかも。



[ メッセージ編集済み 編集者: よねKEN 編集日時 2005-01-15 02:05 ]
1

スキルアップ/キャリアアップ(JOB@IT)