AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Farbiges Eingabefeld

Ein Thema von LOMBI · begonnen am 27. Nov 2004 · letzter Beitrag vom 27. Nov 2004
Antwort Antwort
LOMBI
(Gast)

n/a Beiträge
 
#1

Farbiges Eingabefeld

  Alt 27. Nov 2004, 10:55
Hallo,

während der Laufzeit soll das jeweilige Feld auf der Form bei der Eingabe oder Änderung von Daten mit der Eigenschaft Color gelb dargestellt werden.

Wer hilft mir bitte weiter?

Gruß
Lombi
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Farbiges Eingabefeld

  Alt 27. Nov 2004, 10:57
Etwa so sollte es gehen:
Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  (Sender as TEdit).Color := clYellow;
end;
Diese Prozedur musst du nur noch jedem Feld zuweisen und bist fertig
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Farbiges Eingabefeld

  Alt 27. Nov 2004, 10:58
Hai LOMBI,

Du kannst im OnChange Ereigniss die Farbe des TEdit ändern. Im OnExit setzt Du die Farbe dann wieder auf den "normalen" Wert.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
LOMBI
(Gast)

n/a Beiträge
 
#4

Re: Farbiges Eingabefeld

  Alt 27. Nov 2004, 11:47
Danke für die prompte Antwort.

Es handelt sich aber um DBEdits.

Beim Eingeben oder Ändern von Daten in diese Felder (während das Programm
läuft) soll immer nur das Eingabefeld in Color gelb dargestellt werden, in dem sich der Cursor gerade befindet und nach Verlassen des Feldes und mit dem Speichern des Datensatzes seine ursprüngliche Color-Farbe zurück- erhalten.

Gruß
Lombi
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Farbiges Eingabefeld

  Alt 27. Nov 2004, 12:13
Hai LOMBI,

schaue Dir mal diesen Code an. Das sollte dir helfen dein Problem zu lösen
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  ndx : Integer;
begin
  for ndx := 0 To Pred (ControlCount) do
  begin
    if ((Controls[ndx]) IS TDBEdit) then // Alle TEdits berücksichtigen
    begin
      (Controls[ndx] As TDBEdit).OnEnter := EditEnter; // OnEnter-Methode zuweisen
      (Controls[ndx] As TDBEdit).OnExit := EditExit; // OnExit-Methode zuweisen.
      (Controls[ndx] As TDBEdit).OnChange := EditChange; // OnChange-Methode zuweisen.
    end;
  end;
end;

procedure TForm1.EditEnter(Sender: TObject); // OnEnter
begin
  (Sender As TDBEdit).Color := clAqua; // Sender auswerten
end;

procedure TForm1.EditExit(Sender: TObject); // OnExit;
begin
  (Sender As TDBEdit).Color := clWhite;
end;

procedure TForm1.EditChange(Sender: TObject); // OnChange
begin
  (Sender As TDBEdit).Color := clYellow;
end;

procedure TForm1.EditColorReset; // Alle DBEDit auf weiss ausser dem aktiven
var
  ndx : Integer;
begin
  for ndx := 0 To Pred (ControlCount) do
  begin
    if ((Controls[ndx]) IS TDBEdit) then
    begin
      (Controls[ndx] As TDBEdit).Color := clWhite;
    end;
  end;
  if (ActiveControl IS TDBEdit) then
  begin
    (ActiveControl AS TDBEDit).Color := clAqua;
  end;
end;

procedure TForm1.Query1BeforeScroll(DataSet: TDataSet);
var
  ndx : Integer;
begin
  for ndx := 0 To Pred (ControlCount) do
  begin
    if ((Controls[ndx]) IS TDBEdit) then
    begin
      (Controls[ndx] As TDBEdit).OnChange := nil;
    end;
  end;
end;

procedure TForm1.Query1AfterScroll(DataSet: TDataSet);
var
  ndx : Integer;
begin
  for ndx := 0 To Pred (ControlCount) do
  begin
    if ((Controls[ndx]) IS TDBEdit) then
    begin
      (Controls[ndx] As TDBEdit).OnChange := EditChange;
    end;
  end;
end;

procedure TForm1.Query1AfterPost(DataSet: TDataSet);
begin
  EditColorReset;
end;

procedure TForm1.Query1AfterCancel(DataSet: TDataSet);
begin
  EditColorReset;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz