WinNT VC++ 6.0 MFCです。
MSFlexGridを使って表を作りたいのですが
MSDNにはVB版しか記載されていません。
これについての知識は何を利用したらよいのでしょうか?
MSFlexGridを使われているかたにお聞きします。
よろしくお願いします。
http://ayusya.hp.infoseek.co.jp/
と
http://www.bcap.co.jp/hanafusa/
後者はVBだけど、なんとなく判るでしょう。
これで足りないときは、試行錯誤。
リストより良いです。ソートも簡単だし。vbとは結構似てます。
たいちう さん sさん ありがとうございました。
お蔭様で解決しました。
もうひとつ質問したいのですが「あゆしゃ」さんのサンプルを変更して
マウスによるカット&ペーストを追加したいのですが変更可能でしょうか?
VK_SHIFTと矢印キーでの選択はできるようですが、マウスでの選択がうまくできません。
お気づきの点がありましたらお聞かせください。
> もうひとつ質問したいのですが「あゆしゃ」さんのサンプルを変更して
> マウスによるカット&ペーストを追加したいのですが変更可能でしょうか?
> VK_SHIFTと矢印キーでの選択はできるようですが、マウスでの選択がうまくできませ
ん。
> お気づきの点がありましたらお聞かせください。
どのサンプルでしょう?
例えば「ビットマップを表示するサンプル」でしたら、方向キーでの選択も
マウスでの選択も可能でしたが。(当方VC6+SP5, WindowsXP/Professional)
変更可能でしょうか?と聞かれたら、多分可能でしょうと答えますが、
もっと質問を具体的にしてください。
元にしたサンプル、追加したい機能の詳細、変更した点、問題点などです。
ご意見ありがとうございます。
>どのサンプルでしょう?
MSFlexGridCtrolサンプルです。
>もっと質問を具体的にしてください。
>元にしたサンプル、追加したい機能の詳細、変更した点、問題点などです。
(1)cellをダブルクリックの後、cellの文字列すべてを選択状態する。
(2)マウスでカーソルを移動して部分文字列を選択する。
(1)は修正できました。
ダブルクリックの場合は
ShowCellEdit( LPCTSTR buff )関数の
// 選択状態を解除する
pEdit->SendMessage( WM_KEYDOWN, VK_RIGHT );
を実行しない。
(2)がうまく修正できてないです。
以上です。よろしくお願いします。
CGridDlgDlg::ShowCellEdit()の最後に
pEdit->SetCapture();
を追加。::ReleaseCapture()もどこかで行う必要があるような気がしますが、
なしでも動くようです。動作とソースの確認をしてください。
(動作の確認とは浪人さんの望むとおりの動作かどうか。十分な仕様の説明が
されているとは思えません。)
たいちう さんありがとうございました。
SetCaptureで部分文字列の選択ができました。
たびたびすみませんもうひとつわからないことがあるのですが。
ひとつのセルに複数行のデータ(cr区切り)を入れてコピーし、
他のセルにペーストするとそのセルから複数セルに分かれてペースト
されます。
ひとつのセルにペーストが可能ですか。時間がとれないので実験が2,3日後
になるのですが、何かよい方法がありましたらお聞かせください。
人に聞く前に自分でソースを読みなよ。
かなり親切なコメントがあるし、だいたい判ると思うけど。
void CGridDlgDlg::CellPaste( CString st )
↑で文字列を貼り付けているけど、このとき、stを解析して何行×何列の
セルにコピーするか判断してます。解析というほどのことはないけど。
この判断をしないで、これを常に1つのセルに貼り付けるようにすれば良い。
たいちうさんありがとうございました。
お蔭様でMSFLexGridよく理解できました。