掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
StringGridのマウスホイールの動作をListView風に (ID:33603)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
サブクラス化でメッセージを補足する方法もありますが、 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids; type TEStringGrid= class(TStringGrid) private procedure WMMOUSEWHEEL(var message:TWMMOUSEWHEEL); message WM_MOUSEWHEEL; end; TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private StringGrid1: TEStringGrid; public { Public 宣言 } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin StringGrid1:= TEStringGrid.Create(Self); StringGrid1.RowCount:=20; StringGrid1.Parent:=Self; end; { TEStringGrid } procedure TEStringGrid.WMMOUSEWHEEL(var message: TWMMOUSEWHEEL); var msg:TMessage; begin FillChar(msg,sizeof(msg),0); if message.WheelDelta > 0 then msg.WParamLo := SB_LINEUP else msg.WParamLo := SB_LINEDOWN; SendMessage(Handle,WM_VSCROLL, msg.WParam,msg.LParam); end; end.
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.