Προς το περιεχόμενο

Ορισμός-Δημιουργια procedure σε delphi


Μέλας Κύων

Προτεινόμενες αναρτήσεις

Δημοσ.

Σε μια φόρμα με κουμπια και πεδια κειμενου θελω να δημιουργήσω procedure

η οποία να καθαρίζει τα πλαίσια κειμένου απο καταχωρησεις.

Μια τέτοια περίπου είναι:

***********

procedure Ka8arismos;

begin

txtPedio.clear;

end;

***********

σε ποια τμήματα όμως του παρακάτω σκελετού-κώδικα ενος unit μπορω να την καταχωρήσω;

Εχω δοκιμάσει όλες τις πιθανές περιπτώσεις αλλα τζιφος.

Κατ'αρχήν έκανα δήλωση της διαδικασίας στο interface τμημα ως:

procedure Ka8arismos;

και μετα στο implementation τμήμα ορισα την διαδικασία.

ΓΕΝΙΚΑ ΤΟ ΕΡΩΤΗΜΑ ΜΟΥ : ΠΩΣ ΚΑΙ ΠΟΥ ΔΗΜΙΟΥΡΓΟΥΜΕ ΔΙΑΔΙΚΑΣΙΕΣ σε ένα UNIT;

 

---------------------

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs;

 

type

TForm1 = class(TForm)

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

end.

Δημοσ.

Δεν έχω Delphi εδώ που είμαι, αλλά δοκίμασε αυτό

 

>
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
   [b] Procedure CleanTexts(); [/b]
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
[b]  
procedure TForm1.CleanTexts();
begin
 txtMyName.Text = '';
end;
[/b]

end.

 

Βασικά η ιδέα είναι ότι για να μπορείς να έχεις πρόσβαση στα controls της φορμάς, καλό είναι η procedure να ανήκει στην φορμα...

 

Εάν δεν βγάλεις άκρη μέχρι τις 1/5 τότε στείλε μου ένα pm να το κάνω σε delphi...

Δημοσ.

Όπως τα είπε ο drm αλλά χωρίς παρενθέσεις.

 

Τώρα αν θες να είναι άσχετη procedure, τότε κάν' το όπως το έκανες αρχικά (interface/implementation) και πέρ' να της παράμετρο τη φόρμα όταν την καλείς, π.χ. Ka8arismos(self).

Οπότε τη δηλώνεις σαν

procedure Ka8arismos(f: TForm1);

 

Αν δεν θες να δέχεται παράμετρο, τότε (διαλύωντας τελείως το concept του procedural programming) μπορείς να κάνεις

procedure Ka8arismos;

begin

form1.text1.caption := 'asdf';

end;

 

δηλαδή να βάζεις και το όνομα μεταβλητής της φόρμας.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...