AGB  ·  Datenschutz  ·  Impressum  







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

variblen in einer anderen procedur verändern

Ein Thema von Generaljim · begonnen am 3. Mai 2007 · letzter Beitrag vom 3. Mai 2007
Antwort Antwort
Seite 1 von 2  1 2      
Generaljim

Registriert seit: 5. Apr 2007
34 Beiträge
 
#1

variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:27
Hallo leute , ich hab ein kleines problem : wie kann ich variablen deklarieren die ich zur laufzeit ändern kann und diesen neuen wert zur luafzeit auch wieder auslesen kann?


gruß an alle


P.S: bin neu deswegen keine ahnung vom programieren
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:29
schlechte lösung: globale Variable
bessere Lösung: Var Parameter / Rückgabewert
Markus Kinzler
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#3

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:31
Hi,

übergib deine Variable an die Procedur mit der Deklaration var. dann kannst du sie in der Procedure verändern und bekommst sie verändert wieder zurück.

Delphi-Quellcode:
procedure VarReturne(var MyVar : Integer);
begin
  MyVar := MyVar + 2;
end;
Gruß oki
  Mit Zitat antworten Zitat
Generaljim

Registriert seit: 5. Apr 2007
34 Beiträge
 
#4

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:34
schon nicht schlecht aber nix für mein problem ich will die variable aus verschieden anderen prozeduren heraus bequem verändern und auh wieder aufrufen können.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:35
Dann bleibt dir ja nur eine globale Variable
Markus Kinzler
  Mit Zitat antworten Zitat
Generaljim

Registriert seit: 5. Apr 2007
34 Beiträge
 
#6

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:37
sonst geht nix nur globale variable oder den umweg über ne procedur?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:38
Eine lokale Variable hat ja nur einen Scope innerhalb der Prozedur/Funktion
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#8

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:39
Hallo,

so eine variable musst du (unit/klassen)global deklarieren. Das heißt, die kommt als var in deine unit:

Delphi-Quellcode:
unit SomePascalStuff;

initialization

var
  MyVar: TVar;

implementation

//beispielzugriff
procedure InitVar;
begin
  MyVar := TVar.Null;
end;
oder als member in eine klasse:

Delphi-Quellcode:
unit SomePascalStuff;

initialization

type
  TMyClass = class
  public
    MyVar: TVar;

    procedure InitVar;
  end;

implementation

//beispielzugriff
procedure TMyClass.InitVar;
begin
  MyVar := TVar.Null;
end;
Auch Delphi-Forms sind Klassen, du kannst sowas also auch z.B. unter "{Private-Deklarationen}" in deine Formklasse schreiben.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#9

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:39
Wenn du es im Rahmen eines Objektes tust wird sicher keiner die Nase rümpfen.

Delphi-Quellcode:
type
  MyObject = class
  private
    FMyVar : Integer;
  protected
    procedure IncrementMyVar;
    procedure DecrementMyVar;
  end;

procedure IncrementMyVar;
begin
  Inc(FMyVar);
end;

procedure DecrementMyVar;
begin
  Dec(FMyVar);
end;
Wenn nicht objektorientiert ist dann global wie mkinzler sagt.

Gruß oki

edit: roter Kasten! grrrr! oder wie DGL_luke sagt
  Mit Zitat antworten Zitat
Generaljim

Registriert seit: 5. Apr 2007
34 Beiträge
 
#10

Re: variblen in einer anderen procedur verändern

  Alt 3. Mai 2007, 17:40
na dann mal herzlichen dank , ich probiers dann mal.

gruß Jim Balthasra
  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 23: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