掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
簡略化について (ID:15331)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
TabOrderプロパティが連続しているのであれば、以下のようにして1つのイベントでできます。 TagプロパティとFindControlを組み合わせればTabOrderに関係なく、もう少し簡単になりますが、過去ログに出ているので割愛。 思いつきで作ってみました。FindNextControlがprotectedだったので、GetTabOrderListから取得するようにしました。 Edit1〜Edit9までが、連続したTabOrderで、Edit9でのチェックは無しということで組んであります。 procedure TForm1.EditChange(Sender: TObject); var CurCtrl: TEdit; NextCtrl: TWinControl; List: TList; Index: Integer; begin CurCtrl := Sender As TEdit; if CurCtrl.Name = 'Edit9' then begin end else begin List := TList.Create; try GetTabOrderList(List); if List.Count > 0 then begin Index := List.IndexOf(CurCtrl); Inc(Index); if Index = List.Count then Index := 0; NextCtrl := List[Index]; if NextCtrl Is TEdit then begin NextCtrl.Enabled := CurCtrl.Text <> ''; end; end; finally List.Free; end; end; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.