4

http://screenshots.en.sftcdn.net/en/scrn/39000/39972/xentient-labels-1.jpg

アプリケーションのようにWindowsエクスプローラーでアイテムの背景色を変更することはできXentient Labelsますか?Windows7のDelphiXE2からそうすることは可能ですか?

4

2 に答える 2

11

WindowsエクスプローラのリストビューはWindowsXPの場合とは異なり、 notを使用するため、Windows7ではこれを行うことはできません。クラスコントロールはリストビューメッセージをリッスンしないため、Windows XPの場合のように、マクロを使用してテキストの色を変更することはできません。DirectUIHWNDSysListView32DirectUIHWNDListView_SetTextBkColor

次の簡単なテストでそれを確認できます。フォームに編集ボックスとボタンを配置しましょう。その編集ボックスに、Windowsエクスプローラーのリストビューコントロール(Spy ++などで取得)へのハンドルを入力し、ボタンを押して次のコードを実行します。

uses
  Winapi.CommCtrl;

procedure TForm1.Button1Click(Sender: TObject);
var
  ListViewHandle: HWND;
begin
  ListViewHandle := StrToInt(Edit1.Text);
  ListView_SetTextBkColor(ListViewHandle, $0000CCFF);
end;

このWindows7のSpy++スクリーンショットは、エクスプローラーのリストビューのクラス名を示しています(Windows XPではSysListView32、標準のリストビューメッセージで制御可能であり、DirectUIHWNDそれらに反応しません)。

ここに画像の説明を入力してください

于 2012-05-21T08:01:39.597 に答える
2

テキストに色を付けることはできませんが、TortoiseSVN / CVS / Git / Groove / Dropbox/etcのようなオーバーレイを追加することはできます。します。

オーバーレイアイコン付きのエクスプローラーのスクリーンショット

https://tortoisesvn.net/screenshots.htmlから)

于 2012-05-21T07:56:12.733 に答える