- ベストアンサー
MSHFlexGrid および MSFlexGrid に関して
こんにちわ MSFlexGrid,HSHFlexGrid に関して下記の方法を調査中です。 ご存知の方いらっしゃいましたら、情報提供をよろしくお願い致します。 (1)固定行および固定列のグリッド線の色の設定。 (2)固定行でない行のスクロールの固定の方法。 ※エクセルのウィンドウの固定と同様の設定。 たびたび申し訳ありません。よろしくお願い致します。
- sho_ta
- お礼率68% (221/322)
- Visual Basic
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
製品版(VS-FlexGrid)ならGridColorFixed, ForeColorFixed, BackColorFixedで出来ます。 MS*FlexGridは所詮VBのおまけで、機能が制限されています。
その他の回答 (1)
- TAGOSAKU7
- ベストアンサー率65% (276/422)
Todo氏に大賛成 以前にリストビューをHookして色を付けましたが、既存のコントロールへの力技の改造は、大変な労力を費やします。 あるいは・・・ 表示だけならグリッド系コントロールを使用しないで、OLEオブジェクトでEXCELを埋め込むというのは反則でしょうか?
お礼
有り難うございました。 >あるいは・・・ >表示だけならグリッド系コントロールを使用しないで、OLEオブジェクトでEXCEL>を埋め込むというのは反則でしょうか? 全端末に Excel がインストールされている訳ではないので NG です。 標準のグリッドコントロールでは出来ない事が解りましたので、それだけで大変助かりました。 また何か有りましたらよろしくお願い致します。
関連するQ&A
- MSFlexGrid
VB6SP6を用いています。MSFlexGridですが、固定行をラベルに用いています。このグリッドをクリックして処理を行っています。固定行では、クリックを無視してほしいのです。固定行をクリックしても、grid.Rowの値は0ではなく、押してもいない、1が返ってきます。本来はクリックしたくない場所ですが、処理を行う1行目をクリックしたことと同じになってしまいます。 ラベル部分をクリックしないようにと伝えていますが、やはり具合が悪いです。 良い、回避方法はないでしょうか。
- ベストアンサー
- Visual Basic
- VB6 MSFlexGridとPictureBox
お世話になります。 Visual Basic6.0(SP6)で開発している素人です。 (質問1) PictureBoxのBackColorが変色できません。 Picture1.BackColor = &H80FF80 '緑色。色は問いません。 PictureBoxは色の変更はできないものなんでしょうか? (質問2) MSFlexGridでexcelの内容をセル指定して表示できたのですが、 指定のMSFlexGridの行の色を変えられません。20行3列で、○行目の1~3列を 色を変えたいです。 MSFlexGrid1.Row = 2 MSFlexGrid1.BackColorSel = QBColor(11) MSFlexGrid1.CellForeColor = QBColor(11) いづれもうまくいきませんでした。。。 (質問3) MSFlexGridでexcelの内容をセル指定して表示できたのですが、行の高さを 変更できません。 MSFlexGrid1.RowHeight(-1) = 800 '標準の行高さ指定(-1で全部を変更) と、やっても MSFlexGrid1 .RowHeight(0) = 800 '0行目の高さを800に MSFlexGrid1 .RowHeight(1) = 800 '1行目の高さを800に と、やっても 一番上の行しか高さが変わりません。 優先順位は 質問3 > 質問1 > 質問2 です。 急いでいますので、どなたかお願いします!
- ベストアンサー
- Visual Basic
- MSFlexGridとDataGridの違いについて
VBの勉強をしております。 WindowsXP、VB6.0です。 標記の件について質問させてください。 MSFlexGridは、グリッドの結合や色を付けたりするのに適している。 DataGridはエクセルのように、直接グリッド内を編集できるが、結合は無理で、色付けの設定はグリッド単位では指定できない。 2つのグリッドのどちらを使えば良いのか分からず、自分で調べてみた所、以上のような違いがあるのでは、という所までは分かりました。 行いたい処理は、 ・ファイルからデータを取り出し、グリッドへ表示。データの追加、修正、削除を行い、ファイルへ保存する。 機能として、検索とソートを行える。 また、データをクリックした際に、セルではなく、行全体の色を変更し、「行が選択されている」という見た目にしたい。 以上のような考えがあるのですが、実装が簡単なのはどちらのグリッドなのでしょうか? また、他に上記のような処理が可能なコントロールがあれば教えていただけないでしょうか? 以上、初心者なもので、文章が理解しづらいかもしれないですが、よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- VB6.0 MSFlexGridのMouseRowプロパティについて
研修中の新人です。 テキストファイルからランダムアクセスをしMSFlexGridに表示させる課題を作成しています。 MSFlexGridに表示させた行の更新、削除について考えています。 MouseRowプロパティで得られる行の番号というのはMSFlexGridに表示させている行の番号でしょうか。 それとも検索で得られた行全体の中の番号でしょうか。 例えば検索で50件得られMSFlexGridに表示したとします。 MSFlexGridは10件ずつしか表示しないとします。 41件目から50件目をスクロールして表示させ50件目をクリックしたとき、 MouseRowは"10"を返すのでしょうか。それとも"50"を返すのですか。 もし、"10"をかえしてしまうのなら列幅を0にしてファイルの行番数を格納しておくような列をつくります。(行番号は表示させてはいけない) そうではなく、"50"を返すなら配列に検索一致したファイルの行番数を格納しておく方法でコードを書こうと思います。 ご存知の方お願いします。
- ベストアンサー
- Visual Basic
- MSFlexGridのスクロールバー位置
VB5(SP3)です。 ある検索条件でMSFlexGridに100行表示させた後、垂直スクロールバーで50行ほど下方向にスクロールさせます。 この状態で違う検索条件で1行表示させた時、垂直スクロールバーの位置が変わらないため(TOPにこない)に何も表示されません。垂直スクロールバーを上方向にスクロールさせれば出てきます。 垂直スクロールバーをTOP位置に持ってくる方法はありませんか? MSFlexGrid.VscrollBar.Value=0とかあれば・・・・
- ベストアンサー
- Visual Basic
- EXCELのデータをMSFlexGridへ
VB6.0で開発しています。 EXCELのデータをMSFlexGridへ表示しています。 下のように表示出来たのですが 特定の行だけ表示したいのですがどうすればいいでしょうか? 例えばA列とC列とD列といった場合。 よろしくお願いします。
- 締切済み
- Visual Basic
- VB6 MSFlexGridについて
こんばんは。 VisualBasic6のMSFlexGridに以下の様にデータをセットしたいのですが中々うまくいきません。 ※DBのデータ RowNo ColNo Data 1 1 A 1 2 B 1 3 C 2 1 D 2 2 E 2 3 F ※MSFlexGridデータセットイメージ RowName ColName1 ColName2 ColName3 1 A B C 2 D E F 縦に並んでいるデータベースの値を横に並べたく思っています。 RowNo = 1 , ColNo=1 , Data =A ⇒ MSFlexGrid 1行目、1列目の値=A というような感じです。 わかり難くて申し訳ないですがご教授頂けると助かります。 どうぞ宜しくお願い致します。
- ベストアンサー
- Visual Basic
- VB6のMsFlexGridコントロールについて
取得したデータ数分の行にデータを表示して その後10カラム目のデータでソートしているのですが 行選択状態の表示が消えてしまいます。 MSFlexGrid1.Col = 10 MSFlexGrid1.Sort = flexSortGenericDescending '* 降順にソート MSFlexGrid1.Row = 1 どうやら、Col、Rowプロパティに値を設定した時点で消えているようです。 これらをやらないと1行目が選択状態と なっています。表示後カーソルでクリックすると 行選択状態になります。 表示時点で行選択状態にさせたいのですがなにか 手段があれば教えてください。 設定しているプロパティは下記の通りです。 HighLight=1:(選択を強調表示) SelectionMode=1:(行全体を選択) よろしくおねがいします。
- 締切済み
- Visual Basic
- グリッドについて,エクセルのアドインについて
1)グリッド上で文字を直接入力したいのですが,どのようにすればよいのでしょうか。具体的には,エクセルのようにグリッド上をクリックしたら,そのグリッドがテキスト入力モードになるような方法を教えて頂きたいと思います。 2)MSFlexGridに描かれる垂直スクロールバーの,幅の値を得る方法を教えてください。(スクロールバーを表示させるとグリッドの右端が切れてしまうため) 3)エクセルのソルバーアドインを,VBから使用することはできますか? 複雑な回帰分析を行わせようと考えておりますので,できればエクセルのアドインをそのまま使えれば…,と考えております。 以上,よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- MSFlexGrid 行選択状態
現在VBを勉強しております。(WindowsXP、VB6.0) http://oshiete1.goo.ne.jp/qa996239.html ↑の質問と同じ内容で悩んでいるんですが、回答を見ても理解出来ず、解決出来ていません(>_<) 1.処理起動時に、テキストファイルからデータを読み込み、グリッドへ表示した後。 2.ソートした後。 3.「検索」処理にてデータを絞り込んで表示した後。 以上3点の時に、行選択状態でなくなってしまうので、それを修正したいんですが、方法が分かりません(;_:) 現在は、グリッドのフォーカスイベントに MSFlexGrid1.SelectionMode = flexSelectionByRow を設定しているだけです。 以上、よろしくお願いいたしますm(__)m
- ベストアンサー
- Visual Basic
お礼
早速の御回答ありがとうございました。 製品版でないと出来ないのですね..... 予算の関係で購入は難しい状況なのです。 MS FlexGrid でなんとかがんばってみます。 また何か有りましたらよろしくお願い致します。