Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi fokusiertes feld in einem grid ansprechen & wert ändern (https://www.delphipraxis.net/113088-fokusiertes-feld-einem-grid-ansprechen-wert-aendern.html)

5etH 2. Mai 2008 12:54


fokusiertes feld in einem grid ansprechen & wert ändern
 
Hallo zusammen,

ich arbeite momentan mit mehreren Stringgrids, mit dessen Inhalten werden sachen errechnet, daher würde ich gerne wissen wie ich am besten abfangen kann das der Benuter einen Buchstaben eingegeben hat. Ich habe es schon mit einem Try Except probiert ,aber dann kommt diese meldung oft, da ich nicht weis wie ich das Feld ansprechen und ändern kann. ich hoffe ihr könnt mir helfen eine Lösung zu finden ..

Hier ist mein bisheriger Programmteil:

Delphi-Quellcode:
procedure TFinT.StringGrid1KeyUp(Sender: TObject);

begin
  try
    umsatz();
    errechnen();
    optionen.gesamt(fint.stringgrid1);
    optionen.gesamt(fint.stringgrid2);
    optionen.gesamt(fint.stringgrid3);
    optionen.gesamt(fint.stringgrid4);
    optionen.gesamtteil(fint.stringgrid5);
  except
    showmessage('Hier können sie nur Zahlen eintragen!')
  end;
end;
schonmal vielen Dank
euer 5etH

s-off 2. Mai 2008 13:37

Re: fokusiertes feld in einem grid ansprechen & wert änd
 
Hallo,

abfrage, ob in dem Feld nur Buchstaben eingegeben werden, kannst Du z.B. so:
Delphi-Quellcode:
Procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; Const Value: String);
Var
   cLastChar: Char;
Begin
   If Value = '' Then
      Exit;

   cLastChar := Value[Length(Value)];
   If Not (cLastChar In ['A'..'Z', 'a'..'z']) Then
      ShowMessage('Du siehst nicht aus wie ein Stabe');
End;
Damit wird nach jeder Änderung des Textes im InplaceEditor das letzte Zeichen überprüft.
Leerzeichen, Löschtaste etc. musst Du ggf. selber noch implementieren, wenn gewünscht.
Wenn etwas in die Zelle hineinkopiert wird, funktioniert das so nicht.

Da müsstest Du dann ggf. Zeichen für Zeichen einzeln durchgehen.

5etH 2. Mai 2008 14:12

Re: fokusiertes feld in einem grid ansprechen & wert änd
 
wie müsste ich denn den aufruf gestalten, da ich bei den letzten parametern nicht ganz durchblicke

s-off 2. Mai 2008 15:29

Re: fokusiertes feld in einem grid ansprechen & wert änd
 
Ähm, dieses Event wird von dem Grid angeboten - 'OnSetEditText'.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz