AGB  ·  Datenschutz  ·  Impressum  







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

Prozedur in einer Prozedur starten

Ein Thema von KesseK · begonnen am 1. Feb 2007 · letzter Beitrag vom 10. Feb 2007
Antwort Antwort
Seite 1 von 2  1 2      
KesseK

Registriert seit: 31. Jan 2007
Ort: Dortmund
48 Beiträge
 
Delphi 7 Personal
 
#1

Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:36
Hey

ich habe noch nicht so viel Ahnung von Delphi (3 Wochen), deswegen möcht ich gerne wissen wie ich eine Prozedur aus einer anderen heraus starten kann.

Delphi-Quellcode:
procedure TForm1.onkeypress(Sender: TObject; var Key: Char);
begin
  if not (key in[#8,#13,#49..#58]) then key := #0; //Eingabe auf Ziffern beschränken
  if key in [#13] then
    begin
                          // hier soll die Prozedur: procedure TForm1.StrButtonClick(Sender: TObject); gestartet werden
    end;
end;

Danke!
Sammy
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:40
So:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  ShowMessage('');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Button2.Click;
end;
Aber ich würde empfehlen den Code in eine separate Prozedur / Methode auszulagern und diese von beiden Methode aus aufrufen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

Re: Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:41
aloha in der dp

probiers mal so, so sollte es gehen wenn ich gerade keinen denkfehler gemacht hab

Delphi-Quellcode:
procedure TForm1.onkeypress(Sender: TObject; var Key: Char);
begin
  if not (key in[#8,#13,#49..#58]) then key := #0; //Eingabe auf Ziffern beschränken
  if key in [#13] then
    begin
      StrButton.Click(Sender: TObject);
    end;
end;
edit:
mist luckie war mal wieder schneller und ich hatte nen punkt vergessen
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
KesseK

Registriert seit: 31. Jan 2007
Ort: Dortmund
48 Beiträge
 
Delphi 7 Personal
 
#4

Re: Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:50
Zitat von Andidreas:
aloha in der dp

probiers mal so, so sollte es gehen wenn ich gerade keinen denkfehler gemacht hab

Delphi-Quellcode:
procedure TForm1.onkeypress(Sender: TObject; var Key: Char);
begin
  if not (key in[#8,#13,#49..#58]) then key := #0; //Eingabe auf Ziffern beschränken
  if key in [#13] then
    begin
      StrButton.Click(Sender: TObject);
    end;
end;
edit:
mist luckie war mal wieder schneller und ich hatte nen punkt vergessen
Wenn ich das "StrButton.Click(Sender: TObject);" einsetz dann bekomme ich folgenden Fehler:
[Fehler]Projekt.pas(63):Zu viele Parameter

Was mach ich falsch?
Sammy
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:52
Zitat von KesseK:
Was mach ich falsch?
Du benutzt nicht meine Lösung.

Bei einem Prozeduraufruf werden die Werte der Paramter übergeben und nicht die Paramter mit Datentyp deklariert. Sollte man aber eigentlich sofort sehen - auch als Anfänger.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
KesseK

Registriert seit: 31. Jan 2007
Ort: Dortmund
48 Beiträge
 
Delphi 7 Personal
 
#6

Re: Prozedur in einer Prozedur starten

  Alt 1. Feb 2007, 12:54
Zitat von Luckie:
Bei einem Prozeduraufruf werden die Werte der Paramter übergeben und nicht die Paramter mit Datentyp deklariert. Sollte man aber eigentlich sofort sehen - auch als Anfänger.
Ah ich hab mal wieder alles übersehen, kommt von der Hektik. Danke Luckie, klappt alles
Sammy
  Mit Zitat antworten Zitat
mo_greene

Registriert seit: 10. Dez 2006
Ort: Berlin
136 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Prozedur in einer Prozedur starten

  Alt 10. Feb 2007, 14:42
wie mach ich das, wenn ich die FormCreate-Prozedur aufrufen will? Ich möchte das genauso machen wie der Threadstarter es haben will!
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#8

Re: Prozedur in einer Prozedur starten

  Alt 10. Feb 2007, 14:48
FormCreate(Self);
  Mit Zitat antworten Zitat
mo_greene

Registriert seit: 10. Dez 2006
Ort: Berlin
136 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Prozedur in einer Prozedur starten

  Alt 10. Feb 2007, 14:50
da bekomme ich leider die Fehlermeldung

---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project1.exe ist eine Exception der Klasse EInvalidOperation aufgetreten. Meldung: 'Ein deaktiviertes oder unsichtbares Fenster kann nicht den Fokus erhalten'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------


  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Prozedur in einer Prozedur starten

  Alt 10. Feb 2007, 15:02
Steht doch da, woran es liegt:
Zitat:
'Ein deaktiviertes oder unsichtbares Fenster kann nicht den Fokus erhalten'.
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  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 11:00 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