• ベストアンサー

MSHFlexGridの選択行の表示方法

VB6でプログラミングしているVB初心者です。 MSHFlexGridでデータを表示し、行単位で選択表示をしたいのですが… 初期表示の画面では行単位での表示ができています。 が、カーソルを移動すると先頭のセルが選択表示にならないのです。 プロパティの設定は  SelectionMode=1  FixedCols=0 この状況を直すには、どのようにしたらよいのでしょうか? ご存知の方、ご教授くださいますようお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • VT250F
  • ベストアンサー率30% (26/84)
回答No.1

フレックスグリッドを選択し、右クリックでプロパティを出して下さい。 そして、最低限以下にしてみて下さい。行単位になると思います。 他のプロパティ値をいろいろ変えて確かめてみて下さい。 強調表示    1 - Alwais アクティブセル 0 - None 設定対象    0 - Single 選択モード   1 - By Row

siro-boo
質問者

お礼

その後、いろいろとやってみた結果 エラー原因はプロパティ等の設定ではなく プログラムにありました。 RowColChangeイベントで、選択行のなかから 項目のいくつかをテキストボックスに表示する処理を作っていたのですが… 項目を取得するのに グリッド.col=1 テキストボックス=グリッド.text としていた為、設定が残ってしまっていました。 イベントの最後にcol設定を追加して、表示を変えることができました。 グリッド.col=0 プログラムの見直しが甘くて、申し訳ありませんでした。 VT250Fさま、助言ありがとうございました。

siro-boo
質問者

補足

VT250Fさま、回答ありがとうございます。 でも分からないことがあります。  「フレックスグリッドを選択し、右クリックでプロパティを出して下さい。  そして、最低限以下にしてみて下さい。」 プロパティの「最低限以下」とは何を指すのでしょうか? なお、書き込みしていただいたプロパティは すべてその設定にしていました。 ご面倒かけて申し訳ないです。 よろしくお願いいたします。

関連するQ&A

  • MSHFlexGridについて教えてください

    1.1行選択してDblClickしたいのですが、   今複数行選択できてしまいますので1行しか選択できないようにするには   どうすればよいのか教えてください。 2.選択した行を色をかえているのですが、固定行は色がかわりません   替えることはできないのでしょうか? 3.フォーカスがMSHFlexGridにあるときに   ↑↓で選択行を移動したいのですがどうすればよいのか教えてください。  

  • DataGridViewのカーソル

    VB 2005を使っています。 DataGridViewを初期化した際に、ディフォルト状態ではカーソルが先頭行の 先頭カラムに移動します。 またその背景色が青っぽい色となっています。 ここで希望なんですが、カーソルは先頭行、先頭カラムに移動しても構わない のですが、背景色を白っぽい色にしたいのです。 つまり、カーソルがあろうとなかろうと、各行、セルを同一色にしたいのです。 いろいろ調べてみましたが、やりかたがわかりませんでした。 ご存じの方はよろしくアドバイスお願いいたします。

  • VB2005 DATAGRIDVIEWでの矢印キーの制御について

    お世話になります。 VB2005で開発しています。 DATAGRIDVIEW内の矢印キーを制御できないものかという質問です。 セルが1行に2個あります。 2個目のセルにカーソルを合わせて、文字の最後から←を一つずつ押していくと、カーソルが一文字ずつ前に移動し、先頭に来た状態で、←を押すと、1個目のセルにカーソルが移動してしまいます。 セルの先頭にカーソルがある場合、←を押しても移動しない方法ってあるのでしょうか? よろしくお願いします。

  • MSHFlexGridコントロールについて

    はじめまして。 WINXP,VB6.0,ACCESS2000で文書管理プログラムを作っています。 アクセスで作った下記のmdb形式のファイルを読みとり、vb6のフォーム上のMSHFlexGridコントロールに表示し、コントロール上の該当する行の部分をクリックすることによりPDFファイルを開けるようにと考えていますが、指定した行のPDFを開かせるための処理がわかりません。ご存じの方、よろしくお願いします。 mdbファイルの内容 ・資料区分 ・資料名 ・PDFファイルへのファイルパス

  • gridViewの行選択解除

    gridViewの行選択解除 windowsのvb.netでgridviewを使用しております。 ページを読み込んだ際にgridViewにデータを表示するのですが gridViewの先頭行が選択状態のまま表示されてしまいます。 未選択状態にすることは可能なのでしょうか? お分かりになる方がいらしゃいましたらよろしくお願い致します。

  • SPREADでカーソルの位置を1行目に戻したいなぁ

    VB6とSPREADver7.0を使っています。 SPREADのOperationModeプロパティは2(行モード)です。 初期状態で、SPREADカーソルの位置は1行目にあります。 SPREADの2行目以下の行を選択し、ボタン押下で SPREADカーソルの位置を1行目に戻す処理を知りたいのです(泣 RowcountやRecordCountを使うやり方があると聞いたのですが・・・  どなたかわかる方よろしくお願いします。

  • コンボボックスの選択後のカーソル位置について

    VB6でプログラムを作成しています。 コンボボックスのリストから選択後のカーソル制御について質問です。 コンボボックスのリストから選択後に選択したものが全選択となり カーソルが文字列の最後尾に移動してしまいます。 文字列よりコンボボックスの幅が小さい場合にカーソルが最後尾に移動すると表示が先頭からの表示になりません。 選択後にコンボボックスの表示が選択したものの文字列が先頭から表示 されるように制御したいのですが。 どのように制御したらよいか、知っている方教えてください。

  • テキストボックスに表示された行の番号を取得したい

    VB.NETで簡単なテキストエディタを作っています。 テキストボックスをフォームに張り付けることにより、画面表示及び入力は出来るようになりました。それで、ほかのエディタ(秀丸など)のように、カーソルが、ある行にきたとき、その行番号を画面の下のほうに表示しようと考えています。そのため、まず、カーソルが位置づけられている行の行番号を取得したいのですが、その方法がわかりません。テキストボックスのプロパティ、メソッドを探したのですが、そのようなものは見あたりませんでした。どなたかご存じの方おりましたら、ご教授ください。

  • DataGridViewで列、行、セルの選択

    [環境] Windows7 Professional Visual Studio 2010 Professional お世話になります。 上記環境下にて、DataGridViewを用いたプログラムを 作っております。 そこで、タイトルの件なのですが DataGridViewの一番左(行ヘッダー)をクリックすると行選択、 一番上(列ヘッダー)をクリックすると列選択、 セルをクリックするとセル選択できるようにしたいと思っています。 しかし、DataGridViewのセル選択はSelectionModeという プロパティで制御しているようでして、以下の5種類の選択方法しかないようです。 (1) CellSelect 1 つ以上の個別のセルを選択できます。 (2) FullRowSelect 行のヘッダーまたは行内のセルをクリックすることによって行全体が選択されます。 (3) FullColumnSelect 列のヘッダーまたは列内のセルをクリックすることによって列全体が選択されます。 (4) RowHeaderSelect 行のヘッダー セルをクリックすることによって行が選択されます。個別のセルは、そのセルをクリックすることによって選択できます。 (5) ColumnHeaderSelect 列のヘッダー セルをクリックすることによって列が選択されます。個別のセルは、そのセルをクリックすることによって選択できます。 要するに、 (1)…セル選択のみ可能 (2)…行選択のみ可能(セルクリック時は行選択扱い) (3)…列選択のみ可能(セルクリック時は列選択扱い) (4)…行選択とセル選択のみ可能 (5)…列選択とセル選択のみ可能 ということなので、私の望む、 ・行選択と列選択とセル選択が可能 という制御は無理なのでしょうか。 ご存知の方いましたら、ご教示の程お願い致します。

  • MSHFlexGrid に関して初歩的な質問でスミマセン

    こんにちわ コード内で ADO レコードセットにデータを取得し、MSHFlexGridのDataSource に設定して表示しています。 このMSHFlexGridの選択されたセルの値を取得する方法ご存知の方いらっしゃいましたら、よろしくお願い致します。 ヘルプなどでさんざん調べたのですが、どーしても見つかりません。 まさか出来ないなんて事無いですよね..... と言う事で、大変初歩的な質問で申し訳無いのですが、よろしくお願い致します。

専門家に質問してみよう