3

行全体を選択したいので、グリッド リスト コントロールに LVS_EX_FULLROWSELECT スタイルを設定しようとしています。しかし、明らかに効果はありません。他の多くのスタイルも使用しているので、LVS_EX_FULLROWSELECT に他のスタイルとの互換性の問題があるかどうか疑問に思っています。誰?以下は、私が設定しているスタイルです。

最初に、次のスタイルがベース リスト コントロール クラスに設定されます。

WS_CHILD|WS_BORDER|LVS_REPORT|LVS_SHOWSELALWAYS|LVS_SINGLESEL

次に、派生グリッド リスト コントロール クラスに追加のスタイルを設定しようとします。

ListView_SetExtendedListViewStyleEx(sysId(), 0, LVS_EX_GRIDLINES | LVS_OWNERDATA | LVS_EX_FULLROWSELECT);
4

2 に答える 2

4

2 番目のパラメーターはマスクなので、次のものが必要です。

ListView_SetExtendedListViewStyleEx(m_hWnd, LVS_EX_GRIDLINES | LVS_OWNERDATA | LVS_EX_FULLROWSELECT, LVS_EX_GRIDLINES | LVS_OWNERDATA | LVS_EX_FULLROWSELECT);
于 2010-08-15T11:36:34.083 に答える
2

LVM_SETEXTENDEDLISTVIEWSTYLEメッセージをコントロールに送信し、LVS_EX_FULLROWSELECT拡張スタイルを指定する必要があります(ソース:MSサポート)。

編集:

例を確認してください。がある

ListView_SetExtendedListViewStyle(m_hWnd, ListView_GetExtendedListViewStyle(m_hWnd), VS_EX_FULLROWSELECT);

ListView_GetExtendedListViewStyle(sysId())の代わりに使用してみてください0。ところで-これsysId()は本当にウィンドウハンドルを取得しますか?名前は少し違うように聞こえます。

乾杯。

于 2010-08-12T09:41:20.720 に答える