Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Problem mit DBMemo beim ändern von True in False (https://www.delphipraxis.net/6752-problem-mit-dbmemo-beim-aendern-von-true-false.html)

Nalincah 21. Jul 2003 09:31


Problem mit DBMemo beim ändern von True in False
 
Ich hab in einem Projekt Links ein DBGrid1 in dem eine Tabelle geöffnet ist und rechts daneben ein DBMemo in dem der jeweilige Inhalt drin steht

Code:
procedure TFrmMain.AccessDBGridCellClick(Column: TColumn);
begin
  AccessDBMemo.DataField := AccessDBGrid.SelectedField.FieldName;
end;
Wenn ich jetzt auf ein Feld klicke welches den Datentyp "Boolean" hat wird im Memo "Wahr" oder "Falsch" angezeigt. Jetzt kann man im Memo den Wert ändern. Nach eingabe von "Wahr" oder "Falsch" kann man es mit Return bestätigen

Code:
procedure TFrmMain.AccessDBMemoKeyPress(Sender: TObject; var Key: Char);
begin
  if ReturnTypFkt(Data.AccessTab.FieldByName(AccessDBMemo.DataField).DataType) = 'Boolean' then
  begin
    if (key=#13) then
    begin
      AccessDBMemo.Text := AccessDBMemo.Lines[0];
      Data.AccessTab.Post;
      AccessDBGrid.SetFocus;
    end;
  end;
end;
Leider übernimmt der irgendwie das Enter und dann steht im Feld immer "Boolwert + Return" und dann krieg ich nen Fehler
Wie kann ich jetzt den Boolwert rausfiltern????

Hoffe die Erklärung was verständlich... :)

Mauli 21. Jul 2003 09:35

Re: Problem mit DBMemo beim ändern von True in False
 
Welche Fehlermeldung bekommst du denn genau?

Nalincah 21. Jul 2003 09:39

Re: Problem mit DBMemo beim ändern von True in False
 
Wenn ich mit Return bestätige dann steht das dann zwar im DBGrid drin, wenn ich dann aber in ein anderes Feld wechsel, dann steht das da:

'Wahr
' ist kein gültiger boolescher Wert für Feld 'Feld1'

Mauli 21. Jul 2003 09:47

Re: Problem mit DBMemo beim ändern von True in False
 
Der wird wahrscheinlich mit dem Return nicht klar kommen.

Versuch doch mal den Inhalt des Memos um 3 Zeichen zu verkürzen.

Delphi-Quellcode:
AccessDBMemo.SetLength(Lines[0],Length Lines[0] - 3)
Ich weiß nicht genau, ob das genau so klappt.

Versuch es mal.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:39 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