StringGridの表示につきまして


mook  2016-06-01 11:35:12  No: 48197  IP: 192.*.*.*

StringGridの動きで教えて頂きたい事が出てきました。

以下のようなソースでStringGridを表示しますと
AAA〜DDDはそのまま表示されますがEEEは隠れる状態になります。

この状態でマウスで複数行選択しながら下方にスクロールしますとBBBが隠れてしまいます。

これをBBBを表示させたままスクロールする事は出来るでしょうか?

一応  StringGrid1.LeftCol := 1;  をあちこちに設定して見ましたが効果はありませんでした。

何か対応策がありましたらよろしくご教授お願いします。

procedure TForm1.FormShow(Sender: TObject);
begin
  StringGrid1.FixedCols := 1;
  StringGrid1.FixedRows := 1;
  StringGrid1.Width    := 400;
  StringGrid1.ColCount :=   5;
  StringGrid1.RowCount := 100;

  with StringGrid1 do begin
    ColWidths[0] := 100;
    ColWidths[1] := 100;
    ColWidths[2] := 100;
    ColWidths[3] := 100;
    ColWidths[4] := 100;

    Cells[0 , 0] := 'AAA';
    Cells[1 , 0] := 'BBB';
    Cells[2 , 0] := 'CCC';
    Cells[3 , 0] := 'DDD';
    Cells[4 , 0] := 'EEE';
  end;

  StringGrid1.Options := StringGrid1.Options + [goRowSelect] - [goEditing] + [goRangeSelect];
end;

編集 削除
tor  2016-06-01 12:45:34  No: 48198  IP: 192.*.*.*



イ行目をスクロールさせたくないんだったらニメをイにすればいいですし
そうでなかったら、スクロールさせた時に見出しと隣の列の内容がずれておかしなことになると思うのですが。

それでもあえて、ア列目だけは他と独立させてフローティングさせたような感じにして
上下のスクロールに追従せず、その場に留まったような感じにしたい……ということですかね?
(きわめて説明しにくい動作ですがこれで伝わるでしょうか……)

そういう目的だとたぶん、ア列目とそれ以外を別のグリッドにして横に並べるのが手っ取り早いかと。
(ア列目がただの見出しなら、グリッドじゃなくてラベルとかを並べたのでもいいですし)
そうでなかったら、オーナードローにして自分で頑張ってそう見えるように描画することになると思います。
スススススススススススススススススススススススススススススススススススススススス
ニコ 
トコ イーアカッーカッーアィ水ゥ アウコウーコーウ  書込者ノト:ロ 」 「 ン

ヲサさん、ありがとうございます。

表示は変なと言いますか、いびつな表示・動きをさせる訳ではありません。

動かすと分かりますが
通常チチチャツツツャテテテャトトトはそのまま表示されてナナナが隠れた状態ですが

これを複数行選択しながら下方にスクロールさせて行きますと
チチチャトトトャナナナが表示されてツツツやテテテが見えなくなってしまいます。

上記スクロール時も
チチチャツツツャテテテャトトトが見えるようにしたいだけなのです。

モヌアョフテコスアヲサを設定すれば通常ヲサ表示がずれていてもヲサツツツが表示されますので
今回の問題に対応できるかと思いましたがスクロール中は機能しないようです。
(あちこちに設定してみましたがやり方がおかしいのかもしれませんが)

アドバイスを頂きました、ニテスイにしますと編集など本来の動きと異なってきますし
モヌを複数使いますと同期をとったり他の問題が出てくると思いますのでちょっと難しいかと思います。

モヌアョフテに近いシンプルなやり方があるかと思っていますが
調べましても良い方法がありません。

よろしくお願いいたします。
スススススススススススススススススススススススススススススススススススススススス
ニコ 
トコ イーアカッーカッーアィ水ゥ アウコエエコアイ  書込者ノト:ロ ァ 「「「 ン

試していないですけど、
メモヲサを外し、その代わりにヲサマトテイベントで
メモと同じような感じに背景色を設定するのは、いかがですか?
スススススススススススススススススススススススススススススススススススススススス
ニコ 
トコ イーアカッーカッーアィ水ゥ アエコアウコアー  書込者ノト:ロ 」 「 ン

ヲサさん、ありがとうございます。

モヌのメモの代わりに自力で描画すれば隠れないと言う事ですね?

確かにこの方法であれば対応は出来そうですが
今回のプログラムにはいろんな機能を付加して結構ボリュームがありますので
マトテなどに組み込むのは他との兼ね合いで少し困難が待っていそうです...
(他に手が無ければ検討したいと思います)

後、今回のスクロール&選択をマウスではなくキーボード(矢印など)で行いますと
チチチャツツツャテテテャトトトが見えたままで複数行選択できます。

このキー操作と同じ状況にしたいだけですので
モヌアョフテのようなものをうまく利用すれば出来そうな気がするのですが...

よろしくお願いいたします。
スススススススススススススススススススススススススススススススススススススススス
ニコ ヒマホ
トコ イーアカッーカッーアィ水ゥ アクコイイコアイ  書込者ノト:ロ 」。ィ ン

こんなんどうでしょ?
小細工な上、チラツキが発生しますが…。

ヤフテメソッドに追加します。

ヲサヤニアョモヌアヤフティモコヲサヤマゥサ

ヲサヲサヲサヤモヌィヲサモヲサゥョフテヲサヲサヲサヲサアヲサ
ヲサヲサ
ヲサヲサヲサヲサヤモヌィヲサモヲサゥョフテヲサコスヲサアサ
ヲサヲササ


外してたらごめんなさい。
スススススススススススススススススススススススススススススススススススススススス
ニコ 
トコ イーアカッーカッーアィ水ゥ イーコーアコオキ  書込者ノト:ロ 」 「 ン

ヒマホヲサさん、ありがとうございます。

早速やってみました。

結果は全く問題ありませんし、チラつきもありませんでした。

ただこのままでは常にヲサスアヲサになってしまいますので
必要な時だけ機能するようにすれば出来そうです。

いやあ、マヤフテヲサと言う手があったんですね。
これは忘れていました。

助かりました、ありがとうございました。
解決とさせて頂きます。
スススススススススススススススススススススススススススススススススススススススス
ニコ 
トコ イーアカッーカッーアィ水ゥ イーコーイコエケ  書込者ノト:ロ 」 「 ン
モコ 

チェックを忘れていました。

編集 削除