• ベストアンサー

タスクバーの並び替え

タスクバーを並べ替えるツールを時々見かけますが(taskbar shuffle等)、 あれはどういう仕組みになっているんでしょうか? ご存じの方は教えてくださいm(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★アドバイス  (1)タスクバーのハンドルを取得。  (2)(1)よりツールバーのハンドルを取得。  (3)(2)よりタスクボタンに関連付けられているウインドウ・ハンドルを取得。  (4)(2)よりタスクボタンに関連付けられているアイコン・ハンドルを取得。  (5)(3)(4)の情報より並び替えをする。 ・私も普段『taskbar shuffle』を使わせてもらっています。  タスクバーのドラッグについては  恐らくDLLでフックしてドラッグを実現していると思います。  (未検証です。試したことはありません) ・一番簡単なタスクバーの入れ替え方法は  (1)タスクボタンに関連付けられているウインドウ、アイコンハンドルを取得  (2)リストビュー(リストボックス)などに列挙した一覧を表示  (3)リストビュー(リストボックス)などで上から下を入れ替える(上が左側)  (4)タスクボタンに関連付けられているウインドウをすべて非表示  (5)(3)で並べ替えた順にウインドウを表示  (6)これで完了  ※ツールバーの基本操作を知っていないと難しいと思います。 ・その他  FindWindow、FindWindowEx  GetWindowThreadProcessId、OpenProcess、CloseHandle  VirtualAllocEx、VirtualFreeEx  ReadProcessMemory、WriteProcessMemory  SendMessage  などのAPIを利用します。

kerokk
質問者

お礼

丁寧な回答をありがとうございました。 ツールバーのボタン情報を取得することができたのでなんとか並べ替えもできそうです。

関連するQ&A