Watch, Follow, &
Connect with Us

Please visit our new home
community.embarcadero.com.


Welcome, Guest
Guest Settings
Help

Thread: StringGridの0列目は選択できないのでしょうか?



Permlink Replies: 7 - Last Post: Aug 29, 2016 10:53 PM Last Post By: Hideyuki Oya
Hideyuki Oya

Posts: 87
Registered: 6/6/07
StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 6:21 PM
Delphi10を使っています。
「StringGridの0列目をクリックしたら設定用Form表示、1列目から3列目をダブルクリックしたら直接データ編集」というプログラムを作るため、
以下のように記述しましたが0列目をクリックしてもForm3が表示されません。
他の列で表示させるようにするとOKです。
どこか間違っていますか?
//*********************************************************************************************
procedure TForm4.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
begin
if ARow > 0 then begin
if ACol = 0 then begin
StringGrid1.Options := StringGrid1.Options + [goEditing];//これがなくてもNG
Form3.ShowModal;//設定フォーム呼び出し
end
else begin
if ((ACol >0)and(ACol < 4)) then begin
StringGrid1.Options := StringGrid1.Options + [goEditing];
end
else begin
StringGrid1.Options := StringGrid1.Options - [goEditing];
end;
end;
end;

end;
igy kk

Posts: 147
Registered: 9/11/03
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 7:38 PM   in response to: Hideyuki Oya in response to: Hideyuki Oya
ちなみに、StringGridのFixedCols プロパティは 0 ですか?
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 8:07 PM   in response to: igy kk in response to: igy kk
igy kk wrote:
ちなみに、StringGridのFixedCols プロパティは 0 ですか?

いつもありがとうございます。
FixedCols は1になっています。
0にしても同じです。
なお、FixedRows も1です。
igy kk

Posts: 147
Registered: 9/11/03
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 8:19 PM   in response to: Hideyuki Oya in response to: Hideyuki Oya
Hideyuki Oya wrote:
igy kk wrote:
ちなみに、StringGridのFixedCols プロパティは 0 ですか?

FixedCols は1になっています。

1だったら、ACol = 0のとき は、OnSelectCellイベントが発生しないと思います。

0にしても同じです。

0にした場合、ACol = 0のときでも、OnSelectCellイベントは発生していると思うのですが、
if ARow > 0 then begin
の次の行に、
ShowMessageとかで、ACol, ARowの内容を表示する処理を入れて、
確認するのも、よいかもしれません。

Edited by: igy kk on Aug 29, 2016 8:42 PM
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 8:43 PM   in response to: igy kk in response to: igy kk
igy kk wrote:
Hideyuki Oya wrote:
igy kk wrote:
ちなみに、StringGridのFixedCols プロパティは 0 ですか?

FixedCols は1になっています。

1だったら、ACol = 0 は、OnSelectCellイベントが発生しないと思います。

0にしても同じです。

0にした場合、OnSelectCellイベントは発生していると思うのですが、
if ARow > 0 then begin
の次の行に、
ShowMessageとかで、ACol, ARowの内容を表示する処理を入れて、
確認するのも、よいかもしれません。

ありがとうございます。
プログラム中でもFixedColsを1にしていました。
これを0にすると目的の動作が出来ました。
Makoto Saito

Posts: 26
Registered: 12/5/04
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 9:06 PM   in response to: Hideyuki Oya in response to: Hideyuki Oya
「StringGridの0列目をクリックしたら... (以下省略)
クリックを検出したいのであれば,「選択」ではなく,クリックですね.
固定列あるいは固定行のセルは「選択」はできないようです.
FixedCols の話が出ているので,もしかしたら的外れのレスかも知れません.

[Vcl.Grids.TCustomGrid.OnFixedCellClick - RAD Studio API Documentation]
http://docwiki.embarcadero.com/Libraries/XE6/ja/Vcl.Grids.TCustomGrid.OnFixedCellClick
igy kk

Posts: 147
Registered: 9/11/03
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 9:30 PM   in response to: Makoto Saito in response to: Makoto Saito
Makoto Saito wrote:
「StringGridの0列目をクリックしたら... (以下省略)
クリックを検出したいのであれば,「選択」ではなく,クリックですね.
固定列あるいは固定行のセルは「選択」はできないようです.
FixedCols の話が出ているので,もしかしたら的外れのレスかも知れません.

[Vcl.Grids.TCustomGrid.OnFixedCellClick - RAD Studio API Documentation]
http://docwiki.embarcadero.com/Libraries/XE6/ja/Vcl.Grids.TCustomGrid.OnFixedCellClick

↑↓キーなどでフォーカスが移動した場合でも、OnSelectCellイベントが発生するので、
FixedColsを1にして、「設定フォーム呼び出し」部分のみ、OnFixedCellClick で処理したほうがよいかもしれませんね。
Hideyuki Oya

Posts: 87
Registered: 6/6/07
Re: StringGridの0列目は選択できないのでしょうか?
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 29, 2016 10:53 PM   in response to: igy kk in response to: igy kk
igy kk wrote:
Makoto Saito wrote:
「StringGridの0列目をクリックしたら... (以下省略)
クリックを検出したいのであれば,「選択」ではなく,クリックですね.
固定列あるいは固定行のセルは「選択」はできないようです.
FixedCols の話が出ているので,もしかしたら的外れのレスかも知れません.

[Vcl.Grids.TCustomGrid.OnFixedCellClick - RAD Studio API Documentation]
http://docwiki.embarcadero.com/Libraries/XE6/ja/Vcl.Grids.TCustomGrid.OnFixedCellClick

↑↓キーなどでフォーカスが移動した場合でも、OnSelectCellイベントが発生するので、
FixedColsを1にして、「設定フォーム呼び出し」部分のみ、OnFixedCellClick で処理したほうがよいかもしれませんね。

Makoto Saitoさん,igy kkさん、回答ありがとうございます。
私の場合は主にPC操作にマウスを使っていますので、選択とクリックを同じ意味として使っていました。
FixedColsはプログラムを作り始めたころは指定する必要があったんですが、今のプログラムでは必要がなくなっています。
とりあえず、キーを主に使う人のことも考え、FixedColsを0にして、OnSelectCellイベントで作成してみます。
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02