none
VSFlexGridで、プログラム上で連続しない複数行を選択状態にしたい RRS feed

  • 質問

  • お世話になっております。arubi-momoと申します。

    開発環境は、Windows7 64bit VisualStudio2010 MFC で、画面上でGrapeCity の VSFlexGrid Pro 8.0J を使用しています。

    このグリッドのSelectionMode=ListBoxとして、連続しない複数行の選択も可能としています。

    連続しない複数行を選択して、選択行に対してある処理を行った後、グリッドを一度クリアして再作成し、処理前に選択してあった行を再度選択した状態で表示したいと考えています。

    ①マウスで連続しない複数行を選択したときに、インデックスを保持

    ②処理完了後、再作成されたリストに対し、保持しておいたインデックスの分だけ、grid.Select(row1, col1, row2, col2); を繰り返す

    という処理を行っていますが、grid.Select(row1, col1, row2, col2); を使用すると、最後にselectした行しか選択されません。

    マウス操作ではなく、プログラムの中で連続しない複数行の行を選択状態にする方法はあるのでしょうか。

    ツール自体が古すぎるせいか、Web上にはあまり情報がなく、困っております。

    もしご存知の方がいらっしゃいましたらご教示いただけますと幸いです。

    よろしくお願いいたします。

    2017年7月13日 1:58

回答

  • 自己解決いたしました。

    grid.Select(row1, col1, row2, col2); の代わりに、

    grid.SetIsSelected(row, BOOL);

    を使用することで解決いたしました。お騒がせいたしまして申し訳ありません。

    ありがとうございました。

    • 回答としてマーク arubi_momo 2017年7月13日 4:14
    2017年7月13日 4:14