スプリットコントロールを実装するには?


みけにゃん  URL  2005-03-11 01:00:04  No: 56643

現在作っているMailViewer画面のリストビューと
エディットコントロールの境界線は猫でも分かるのSDK編238章と
ほとんど同じで、境界線を動かすことができないのですが、この
境界線をエクスプローラとかについているスプリットコントロールで
動かしたいのですがどうすれば良いのでしょうか?

オリジナルのソース
http://angelteatime.punyu.net/knot/file/mview005.lzh


みけにゃん  URL  2005-03-12 01:10:08  No: 56644

質問している内容が載っているページが見つかりましたが
このサンプルだとコントロールが1個も乗っていないので
どういう風にリストビューとエディットボックスを載せて
WM_SIZEのところで動かすかが分かりません。

しかもMail Viewerは縦割りなのですぐに応用が利きません。
ご教授の方お願いいたします。m(._.)m

スプリットウィンドウを作る
http://hp.vector.co.jp/authors/VA016117/splitwnd.html


K.  2005-03-12 01:22:32  No: 56645

「スプリットコントロールの上にコントロールを作る」のではなく、スプリットコントロールを、サイズを変更させたい2つのコントロールの間にはさむのだと思いますが。


みけにゃん  2005-03-12 01:56:34  No: 56646

はい。その通りです。(リストビューコントロールとエディットコントロールの間にスプリットコントロールをはさむ)

でもスプリットコントロール SDKで検索しても良い回答が出ず
SDK 境界線で検索してこのページが見つかりました。

この部分に関しては一度もやったことがないので
困っています。TT


どる  2005-03-12 02:24:02  No: 56647

提示されたサンプルのおわりに
CreateSplitBaseとSetSplitSizeを修正してください
で、そこで変更すべきところがわからないのでしょうか?
横割りしてたのだから、LEFTとRIGHTを使って位置を決めてる
縦割りしたいなら、TOPとBOTTOMを使って位置を決めればよろし

関数でなにをしているか、位置も含めて検証してみたらどうでしょう


K.  2005-03-12 20:01:30  No: 56648

やろうとしていることは、
WM_MOUSEMOVEのときマウス位置が境界線上ならカーソルをIDC_SIZENSに変更する。WM_LBUTTONDOWNで、WM_LBUTTONUPが来る前にWM_MOUSEMOVEが来たら、サイズを計算して再描画する、
ということですよね?

ウィンドウプロシージャに直接書いたらいいんじゃないですか?


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加