Windowsエクスプローラには、リストビュー(レポートビュースタイル)がどの方向(ASC対DESC)でソートされているかを示す矢印があります。TListView列に並べ替えの矢印を表示する方法は?
このような並べ替えの矢印を、デルファイのTListView
に表示することはできますか?私は簡単のためエラーチェックを省略している
uses
Winapi.CommCtrl;
var
Header: HWND;
Item: THDItem;
begin
Header := ListView_GetHeader(ListView1.Handle);
ZeroMemory(@Item, SizeOf(Item));
Item.Mask := HDI_FORMAT;
Header_GetItem(Header, 0, Item);
Item.fmt := Item.fmt and not (HDF_SORTUP or HDF_SORTDOWN);//remove both flags
Item.fmt := Item.fmt or HDF_SORTUP;//include the sort ascending flag
Header_SetItem(Header, 0, Item);
end;
:
私はあなたの例にWinapi.CommCtrl uses句を追加しました。ありがとうございます。 –
グリッドでこれを行う方法はありますか? –
@Noグリッドはカスタムコントロールで、完全にVCLコードで実装されています。 VCLがそのような機能を提供しない場合は、コード内でペイントをカスタマイズする必要があります。 –