VSFlexGrid(MSFlexGrid)コントロールで、ある行の操作を不可にするには?

解決


匿名(初心者)  2005-02-15 03:58:20  No: 119634

初心者な質問失礼します。
現在VB6.0においてVSFlexGridコントロールを使用して、アドレス帳的なものの
編集画面を作成しています。

  | 所属 | 名前 | 電話番号 |・・・
  |  A   |  B   |  XXXX   |・・・
  |  A   |  C   |  YYYY   |・・・
  |  D   |  E   |  ZZZZ   |・・・

この時に、「所属」列のみ操作不可としたい(所属列の内容だけは変更させたくない)のですが、どうもうまくいきません。
(Enabled = Falseのようにしたいのですが、何を指定すればよいのかがわからず。。。今はMSFlexGridのヘルプでCol〜系のプロパティを探しまくっているのですが、良い案が見つかりません(><))

ということで、現在暫定的に
BeforeEdit()とAfterEdit()イベントを使用し、VSFlexGrid.Col=1の時のみ
強引に「所属」列内が変更された/されないにかかわらずTextを元に戻すという、ダサ×2な処理にしています。
違和感ありすぎなので、何か良い手段がございましたら教えていただけますでしょうか?よろしくおねがいします。


匿名(初心者)  2005-02-15 04:04:29  No: 119635

失礼しました。タイトルが間違っていました。
「VSFlexGrid(MSFlexGrid)コントロールで、ある列の操作を不可にするには?」
                                            ^^
でした(^^;)


みい  2005-02-15 04:55:08  No: 119636

とりあえず思い付いたのは
・「所属」列を固定列にしてしまう
・BeforeEdit()でVSFlexGrid.Col=1の時のみCancel=True(->編集モードにしない)にする
くらいかな。


匿名(初心者)  2005-02-15 05:09:28  No: 119637

VSFlexGrid.Col=1の時にCancel=Trueで実行させたところ、
理想の処理にすることが出来ました。
みい様、どうもありがとうございました!!!


せる  2005-04-02 03:17:10  No: 119638

Formの中にVsflexGridを配置してある。Formサイズを広げるとVsflexGridのサイズも広がるようにしている。広げたときにVsflexGridのセル幅を広げて、Formサイズを縮めたときにセル幅はそのまま維持したい。ところがVsflexGridも縮めると広げたセル幅も自動的に縮まってしまう。横スクロールバーを出して幅は維持したいがどうすればよいのでしょうか?VsflexGridの仕様上無理なのでしょうか?


みい  2005-04-03 18:42:20  No: 119639

せるさんへ
新しい質問は別スレッドを立てましょう。

環境(VB6,VB.NET等)や
> Formサイズを広げるとVsflexGridのサイズも広がるようにしている。
> 広げたときにVsflexGridのセル幅を広げて、
辺りをどのようなソース書いているか分からないと回答できないです。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加