掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CmboBoxの幅より文字数が多い場合 (ID:6287)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Halbow です。 > 左側に長くなるようにはできないでしょうか? 以下のようにすると、Win98 と Win2000 では面白い動作をします。ほかの環境 ではどうかな? { Private 宣言 } public procedure WMApp(var Msg:TMessage);message WM_APP; end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.ComboBox1DropDown(Sender: TObject); begin SendMessage(ComboBox1.Handle,CB_SETDROPPEDWIDTH,300,0); PostMessage(Handle,WM_APP,0,0); end; procedure TForm1.WMApp(var Msg: TMessage); var hDropL:HWND; R:TRect; Off:integer; begin hDropL := FindWindow('ComboLBox',nil); if hDropL <> 0 then begin GetWindowRect(hDropL,R); Off := (R.Right-R.Left) - ComboBox1.Width; SetWindowPos(hDropL,0,R.Left-Off,R.Top,0,0,SWP_NOSIZE or SWP_NOZORDER); end; end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.