AGB  ·  Datenschutz  ·  Impressum  







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

procedure zur plausibilitätsprüfung

Ein Thema von polondo · begonnen am 5. Sep 2005 · letzter Beitrag vom 5. Sep 2005
Antwort Antwort
Seite 1 von 2  1 2      
polondo

Registriert seit: 1. Sep 2005
84 Beiträge
 
#1

procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:21
hi leute ich hab da mal was geschrieben um ne plausibilitätsprüfung für alle editfelder auf meinem form zu bekommen. dabei soll diese procedure in einem onclick-ereignis aufgerufen werden und sämtliche edit-felder überprüfen. ist ein edit feld leer soll es eine messagebox ausgeben und auf das feld fokussieren... allerdings bekomm ich einen fehler wenn ich versuche dieses procedure folgendermaßen auszuführen: plausi (sender:tedit) error:invalid class typecast ... kann mir da einer weiterhelfen?

Delphi-Quellcode:
procedure plausi (sender:tedit);
begin
with (sender as tedit) do
  begin
  if (sender as tedit).text = 'then
    begin
    MessageDlg ('Please fill all required fields!',mtwarning,[mbok],0);
    (sender as tedit).SetFocus;
    end;
  end;
end;
[edit=Luckie]Delphi-Tags gesetzt. Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: plausi heeeeelp :/

  Alt 5. Sep 2005, 13:24
Bitte ändere den Titel des Threads. Der jetztige ist nicht sehr aussagekräftig. Und setzte bitte auch gleich die Delphi-Tags. Danke.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:27
Wäre nett, wenn du uns noch den Fehler nennen würdest.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#4

Re: plausi heeeeelp :/

  Alt 5. Sep 2005, 13:28
Hallo und herzlich Willkommen palondo!

Dein Problem ist, dass du als Parameter bereits ein TEdit erhältst. Du kannst keinen TypeCast als TEdit auf ein TEdit machen, da es ja bereits ein TEdit ist.

@Luckie
Hat er doch:
Zitat von polondo:
allerdings bekomm ich einen fehler wenn ich versuche dieses procedure folgendermaßen auszuführen: plausi (sender:tedit) error:invalid class typecast
//Edit:
Rechtschreibfehler
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#5

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:29
Die Delphi-Tags fehlen immer noch ([delphi]..[/ delphi])

Ich denke mal, daß du auf jeden Fall mal TObject anstatt TEdit im Prozedurkopf nehmen mußt. Und laß dann beim Aufruf das :TEdit weg, das brauchst du nicht.

//Edit:
OK, die Tags haben sich erübrigt
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#6

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:32
Der Code weist drei Dinge auf die ich merkwürdig finde:
- Sender ist bereits ein TEdit, trotzdem wird der as-Operator verwendet...
- es wird ein with-Block verwendet, aber trotzdem immer ge-castet...
- ich vermute, dass es sich um eine Ereignisroutine handeln soll, allerdings ist es im Moment eine globale Funktion...
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#7

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:37
Zitat von NicoDE:
- ich vermute, dass es sich um eine Ereignisroutine handeln soll, allerdings ist es im Moment eine globale Funktion...
Nein, er möchte diese Funktion in einem onClick-Ereignis aufrufen (siehe sein erster Post). Das passt schon. Nur muß er eben ein TObject übergeben, und kein TEdit. Dann passt das auch (bis auf die 2 anderen Punkte, die du genannt hast )
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
polondo

Registriert seit: 1. Sep 2005
84 Beiträge
 
#8

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:40
erstmal danke für die schnellen antworten!

ich hab nun das ganze so geändert:

Delphi-Quellcode:
procedure plausi(sender:tobject);
begin
with sender as tedit do
  begin
  if (sender as tedit).text = 'then
    begin
    MessageDlg ('Please fill all required fields!',mtwarning,[mbok],0);
    (sender as tedit).SetFocus;
    end;
  end;
end;
aufgerufen wird das ganze mit plausi(sender); in einem onclick-ereignis eines buttons.
jedoch bekomm ich wieder diesen fehler: invalid class typecast

mein procedure kopf sieht folgendermaßen aus:
Delphi-Quellcode:
var
  ProductDefinitionForm: TProductDefinitionForm;
  procedure plausi(sender:tobject); <<<<<< hier hab ich den aufgeführt
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#9

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:41
Zitat von leddl:
Nein, er möchte diese Funktion in einem onClick-Ereignis aufrufen
property OnClick: TNotifyEvent;
Code:
type TNotifyEvent = procedure (Sender: TObject) [color=red]of object[/color];
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#10

Re: procedure zur plausibilitätsprüfung

  Alt 5. Sep 2005, 13:45
Laß mal die Typecasts innerhalb des WITH-Blocks weg. Vielleicht geht es dann.
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 14:02 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