Page 1 of 2 1 2 LastLast
Results 1 to 15 of 16

Thread: Basale Declaratie Variabele vraag

  1. #1

    Question Basale Declaratie Variabele vraag

    Hoi allemaal,

    Ikheb een nogal basale declaratie vraag. Ik krijg een code declaratie error
    foutmelding bij de volgende code:

    Code:
    
    unit Unit1;
    
    interface
    
    uses
       .....
    
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
     end;
    
    var
      Form1: TForm1;
      Getal: Integer;
    
    implementation
    
    {$R *.nfm}
    
    procedure InlezenDesginblad();
    
    begin
    
    Getal :=StrToInt(Edit1.Text);
    
    end;
    
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    
    InlezenDesignblad();
    
    end;
    
    end.
    Hij heeft dan namelijk problemen met de variabele Edit1.
    Nu weet ik dat als je de regel 'Getal:= Str... ' direct
    in de TForm1.Button1C... zet, je geen problemen krijgt.
    Maar ik wil juist alle uitlezingen van het Formdesignblad in
    een procedure zetten en bij elkaar om het geheel een beetje
    overzichtelijk te houden. (En ook omdat het inlezen eigenlijk bij
    elke knop voorkomt. )

    Weet iemand hoe ik het wel moet doen? Het zal vast niet veel uitmaken
    maar ik heb Delphi 8 (.net)


    Vinny


  2. #2
    TCustomBuild Rob Bos's Avatar
    Join Date
    Jan 2003
    Location
    Eindhoven
    Posts
    4,213
    Geef edit1.text mee als parameter aan je procedure....

  3. #3
    dus 'procedure InlezenDesginblad(var getal: integer);'
    Where the revolution takes place```Polity`4h

  4. #4
    Yay: Student(je) af
    Join Date
    Jun 2003
    Location
    Harderwijk
    Posts
    2,621
    Nee -Polity`4h- :
    Code:
    procedure InlezenDesginBlad(const TheEdit: TEdit);
    of
    Code:
    procedure InlezenDesginBlad(const TheText: String);


    [edit]Rob, jij je zin :P[/edit]
    My software never contains bugs. Perhaps just undocumented features.

  5. #5
    TCustomBuild Rob Bos's Avatar
    Join Date
    Jan 2003
    Location
    Eindhoven
    Posts
    4,213
    Nu ga je het helemaal verwarrend maken CompuChip... Rename dan nog op zijn minst de naar van de constante die meegegeven dient te worden...

  6. #6
    Code:
    procedure InlezenDesginblad();
    begin
      Getal :=StrToInt(Edit1.Text);
    end;
    hij wilt variable getal een nieuwe waarde toewijzen tog, dus moet die getal in de procedure opnemen of heb ik het nu fout :S
    Last edited by Dees; 18-Aug-04 at 19:52.
    Where the revolution takes place```Polity`4h

  7. #7
    TCustomBuild Rob Bos's Avatar
    Join Date
    Jan 2003
    Location
    Eindhoven
    Posts
    4,213
    Dat kan natuurlijk wel Polity...
    Maar het is de keuze van de TS(= Topic Starter) om :
    een string (Edit1.Text) door te geven,
    of een integer (StrToInt(Edit1.Text))
    of misschien wel de Edit zelf (Edit).....

  8. #8
    of ...
    Code:
    procedure TForm1.InlezenDesginblad();
    
    begin
    
      Getal :=StrToInt(Edit1.Text);
    
    end;
    Dan kent ie Edit1 weer wel

    @Polty : Getal is globaal ... hoeft dus niet aan procedure meegegeven te worden, maar mag wel.
    De beste manier om te leren is door fouten te maken.
    80 procent van alle leugens die jij en ik vertellen blijft onopgemerkt

  9. #9
    Yay: Student(je) af
    Join Date
    Jun 2003
    Location
    Harderwijk
    Posts
    2,621
    Getal is al een globale variabele, dus die hoef je niet meer mee te geven.
    Je moet een verwijzing meegeven naar het gegeven dat je van het formulier af wilt halen, omdat je procedure daar geen rechtstreekse toegang toe heeft.

    Dus je moet
    a) een TEdit meegeven waarvan je de .Text toewijst aan de globale variabele Getal
    b) een String meegeven en dan Edit1.Text doorgeven in je oproep
    c) een integer meegeven, maar dan moet je bij de oproep het getal al converteren en dan is het nut van je procedure weg, dan kan je nl. net zo goed direct aan de globale variabele toewijzen

    [edit]lol, ik typ ff een berichtje en meteen alweer 2 reacties [/edit]
    My software never contains bugs. Perhaps just undocumented features.

  10. #10
    Heel erg bedankt allemaal,

    Het is gelukt! Weer veel geleerd.

    Vinny

  11. #11
    en hoe heb je het nu opgelost?
    De beste manier om te leren is door fouten te maken.
    80 procent van alle leugens die jij en ik vertellen blijft onopgemerkt

  12. #12
    ah, thnx voor uitleg all
    Where the revolution takes place```Polity`4h

  13. #13
    Ik heb alle methoden wel getest en ik weet nu hoe ze moeten.

    Ik kies nu zelf voor de Tform1.DesignForm methode (die van jou dus ;-) )
    want ik heb nogal veel inlees dingen, en met deze methode hoef
    je het niet allemaal in te typen. (Ik heb namelijk Edit1 t/m Edit 31.)

    Vinny

  14. #14
    Yay: Student(je) af
    Join Date
    Jun 2003
    Location
    Harderwijk
    Posts
    2,621
    Vinny, let op de Sender parameter.
    Bijna alle events sturen in de Sender het object mee dat het even aanriep.
    Als je bijvoorbeeld bij het verliezen van de focus het getal wilt opslaan, kan je alle edits aan dezelfde event handler koppelen:
    Code:
    procedure TForm1.OnEditsExit(Sender: TObject);
    begin
     if (Sender is TEdit) then
      Getal := StrToInt((Sender as TEdit).Text);
    end;
    Dat scheelt je weer kopiëren en plakken en is makkelijker in het onderhoud.
    My software never contains bugs. Perhaps just undocumented features.

  15. #15
    Hoi Compuchip,

    Ik geloof dat ik het niet helemaal begrijp (ik ben nog een Delphi groentje ).

    Je bedoelt dat als je het programma crashed dat je dan je gegevens
    nog op kan slaan ofzo? Maar hoe doe je dat dan met die procedure?

    Vinny

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Indien ingelogt gestelde vraag niet zichtbaar
    By robbedoes in forum De website
    Replies: 5
    Last Post: 01-Jan-05, 14:38
  2. Naam variabele laten afhangen van variabele
    By bramdejonge in forum Algemeen
    Replies: 7
    Last Post: 17-Sep-04, 15:28
  3. Replies: 4
    Last Post: 18-Aug-04, 11:10
  4. Variabele assigned in Record ????
    By mileke in forum Algemeen
    Replies: 7
    Last Post: 06-Feb-03, 23:52
  5. Logaritmes en Global Variabele
    By Zwelgje in forum Algemeen
    Replies: 5
    Last Post: 08-Oct-02, 08:16

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •