Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Deklaration von Prozeduren (https://www.delphipraxis.net/85546-deklaration-von-prozeduren.html)

berens 1. Feb 2007 12:19


Deklaration von Prozeduren
 
Hallo!

* Kann ich das deklarieren von Prozeduren beschleunigen mit nem Hotkey oder so? (BDS2006)
Ich schreibe erst meine (komplette) Prozedur fertig (siehe Schritt 1), dann kopiere die ich die Zeile "procedure..." nach oben in die Typdeklaration und entferne das "TBla" (Schritt 2). Kann man das mit einem Hotkey nicht gleich in der Typdeklaration und im Datenbereich einfügen lassen? Bei mehrseitigen Quelltexten ist das sprigen von unten nach oben und zurück sehr nervend....

Beispiel:
Delphi-Quellcode:
type
  TBla = class(TFoo)
  public
    procedure XYZ(_P1: Integer; _P2: string, .....); // Schritt 2, einfügen, dann "TBla" aus dem Text entfernen
  end;

  ...

procedure TBla.XYZ(_P1: Integer; _P2: string, .....); // Schritt 1, kopieren
begin
  ...
end;
* Wie kann ich in der Delphihilfe nachschauen, was für Parameter eine Prozedur für ein Ereigniss erwartet? Beispiel: OnCanResize. Beim AutoComplete (Strg+Leertaste) steht die Anforderung dabei für die Prozedur. Wo steht das in der Hilfe? Bei "TControl.OnCanResize" werden zwar die Parameter in einem Nebensatz erwähnt, jedoch nicht in welchem Format oder Reihenfolge die übergeben werden müssen. Das nervt, sich da die Parameter aus dem AutoComplete herausschreiben zu müssen und dann per Hand eine passende Prozedur zu deklarieren...

Danke für Tips ;)

Sidorion 1. Feb 2007 12:45

Re: Deklaration von Prozeduren
 
Zum ersten wiess ich nicht, was Du meinst, aber zum zweiten gebe ich Dir folgenden Tipp: In der OH zu OnCanResize ist der Eventtyp als Link angegeben:

Delphi-Syntax:
property OnCanResize: TCanResizeEvent;

. Clickst Du auf diesen Link, kommst Du auf eine Andere Seite der OH wo steht:

Delphi-Syntax:
type TCanResizeEvent = procedure(Sender: TObject; var NewWidth, NewHeight: Integer; var Resize: Boolean) of object;

Diesen Text kannst Du in die Zwischenablage kopieren und in Deinen Code einfügen. Dann musst Du nurnoch den Prozedurenamen ergänzen.

berens 1. Feb 2007 12:53

Re: Deklaration von Prozeduren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Schön wärs ;)

Also mit BDS 2006 geht das wohl net, es sein denn, ich bin komplett Blöde. Siehe Bild im Anhang.

SirThornberry 1. Feb 2007 12:57

Re: Deklaration von Prozeduren
 
mit "Shift + Ctrl + C" wird im Implementationsteil die Funktion/Procedure angelegt welche im Declarationsteil angegeben wurde.

chrisw 1. Feb 2007 12:59

Re: Deklaration von Prozeduren
 
zu Deinem 1. Problem: Bei D7 ab prof geht das, wenn ich Dich richtig verstanden habe, mit STRG-Shift-C.
(procedure im Header einfügen, STRG-Shift-C Drücken, procedure mit Typ wird automatisch im implementation Teil eingefügt)


CU
Chris

berens 1. Feb 2007 13:01

Re: Deklaration von Prozeduren
 
Danke SirThornberry und chrisw, genau das meinte ich :)

Man muss halt mit dem Cursor auf der Prozedur/Funktion sein, dann klappt das.

SirThornberry 1. Feb 2007 13:03

Re: Deklaration von Prozeduren
 
Könntest du bitte für Problem2 ein neues Thema eröffnen? Es gilt: Pro Thread nur eine Frage um die Übersicht zu wahren und das finden per Suche zu erleichtern.

berens 1. Feb 2007 13:08

Re: Deklaration von Prozeduren
 
Klar doch (sorry dass ich es verpeilt habe). Hier gehts weiter: http://www.delphipraxis.net/internal...=674946#674946

Das andere Problem erkläre ich hiermit als gelöst (schöner Shortcut :)

merlin17 1. Feb 2007 13:13

Re: Deklaration von Prozeduren
 
hier gibt es neben der STRG-SHIFT-C-Kombination weitere, tw. echt effiziente!, shortcuts von JohnKaster:

BDS2006 Shortcuts
viele (wenn nciht sogar die meisten) gehen selbstverständlich auch für Delphi < V.2006 ....



:-) thomas

Sascha L 1. Feb 2007 13:38

Re: Deklaration von Prozeduren
 
Ich mach es genau umgekehrt, wie der Threadstarter:

Delphi-Quellcode:
type
  TBla = class(TFoo)
  public
    procedure XYZ(_P1: Integer; _P2: string, .....); // Schritt 1
  end;

  ...

procedure TBla.XYZ(_P1: Integer; _P2: string, .....); // Schritt 2, ich gebe nur procedure TBla. ein
                                                      // und dann kann ich ja aus der Liste die Prozedur auswählen
begin
  ...
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:35 Uhr.
Seite 1 von 2  1 2      

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