AZuSk's secret log

AZuSkの日々的Hack雑記

カーソルの乗った状態でホイールスクロール

      2007/12/04

スポンサーリンク

hoge.secret.jp_300x250

えー、悩んで検索して調べたのでメモしておきますね。
delphiのスクロールできるコンポーネント(TMemo、TListBox等)はクリックしてアクティブにした状態でないとホイールスクロールしてくれません。それって使い心地不便ですよね。しかもOnClickイベントがあったりしたら、スクロールの為だけにOnClickイベント処理もされてしまいます。

カーソルを乗せた状態でホイールでスクロールしましょう。Form1のOnMouseWheelに以下を書きます

procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
  if ( (listbox1.Left<(mousepos.X-left))
      and ((mousepos.X-left)<(listbox1.Left+listbox1.Width)))
      and ((listbox1.Top<(mousepos.Y-top))
      and (mousepos.Y-top<(listbox1.Top+listbox1.Height)) ) then
  begin
  //listbox1の座標とmouseの座標と比較計算して
  //(絶対座標なのでFormのleftとtopも計算にいれてある)
  //postmessageでlistbox1にスクロールmsgを渡す
    if wheeldelta>0 then
      postmessage(listbox1.Handle, WM_VSCROLL, SB_LINEUP, 0)
    else
      postmessage(listbox1.Handle, WM_VSCROLL, SB_LINEDOWN, 0);
  end;
end;

これでスクロールしてくれる。

Powered by ScribeFire.

未分類

スポンサーリンク

hoge.secret.jp_336x280

hoge.secret.jp_336x280

Message

メールアドレスが公開されることはありません。

CAPTCHA


  関連記事

no image
今が旬の検索ワード@楽天

喪中はがき 無料 テンプレート りんご 仮装 ハロウィン 子供 ハロゲンヒーター …

no image
キーボード入力 (今日のテーマ)

BlogPet 今日のテーマ キーボード入力「キーボードをタイピングする時はロー …

wordpressのテーマstinger5の記事冒頭にアイキャッチ画像を表示する為の改造

stinger5の初期状態のままだと、アイキャッチを設定しても、記事一覧には表示されますが、記事本文には表示されません。それではちょっと寂しいと感じましたので、テーマファイルを改造してみました。
最後の「まとめ」に、コピペで改造できるようにソースコードを載せています。

no image
wordpressで編集中にスクロールバーが勝手に一番上に動く

タイトル通りです。 記事を編集中に突然一番上の行に移動してしまい、変換文字が見え …

no image
RYGでN3Rしてみない?

リャグ(RYG) 何でもアルファベットor数字3文字に略してしまおうというコンテ …

no image
育児消耗品の価格調査~アマゾンvs楽天

アマゾンは送料無料 楽天は各ショップ毎に送料が違うので、それも考慮して買いましょ …

no image
WordPressにTwitterを表示する

WordPressのpluginページでTwitterを調べるといろいろhitし …

no image
IEのJavascriptでclass値を設定してもCSSが適用されない

JavascriptでRSSを読み込んで動的にリンクタグを作るスクリプトを組んだ …

no image
dark-city-10@Themes

このブログはWordPressMEというGPLライセンスのブログエンジンで出来て …

no image
BlogPetのブログエディタからWordPressに投稿するには

BlogPetの各種設定ページの「基本設定」-「ブログ」を設定します。 まず、B …