AGB  ·  Datenschutz  ·  Impressum  







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

Variable aus anderer Procedure auslesen

Ein Thema von FCCrobi2 · begonnen am 15. Jan 2015 · letzter Beitrag vom 16. Jan 2015
Antwort Antwort
Seite 1 von 2  1 2      
FCCrobi2

Registriert seit: 15. Jan 2015
5 Beiträge
 
#1

Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 20:04
Delphi-Version: 7
Hi
Ich weiß das dies eine totale Amateur-Frage ist, aber ich bin dies auch. Aber da ich durch reines Googlen einfach keine ordentliche Lösung gefunden habe(oder sie nicht verstanden habe ) stelle ich sie nun hier.

Ich habe in meiner ersten Procedure eine Variable berechnet, die ich allerdings in einer anderen Procedure wiederum neu benötige, also würde ich gerne wissen wie ich diese Variable von der neuen Procedure aus auslesen kann.

ZB. wenn es halt so gehen würde Variable1:=Form1.Procedure1.Variable1;

Ich hoffe ihr könnt mir dabei helfen
  Mit Zitat antworten Zitat
Kralle

Registriert seit: 31. Okt 2004
Ort: Bremerhaven
349 Beiträge
 
Delphi XE7 Professional
 
#2

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 20:29
Hallo,

Mache aus der Procedure eine Funktion und nutze RESULT oder übergebe Deiner Procedure eine Variable
[DP]procedure berechne(VAR ergebnis:integer);[/DP]

Gruß HEiko
OS: Linux Mint 20 Cinnamon (64-Bit), Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC), Lazarus 2.1 (Freepascal 3.3.1),
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 20:43
Du kannst die Variable auch Global machen.

Delphi-Quellcode:
public
  MeineVar: Integer;
Dann kannst du darauf zugreifen.
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
FCCrobi2

Registriert seit: 15. Jan 2015
5 Beiträge
 
#4

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 20:56
Du kannst die Variable auch Global machen.
Wenn ich die Variable aber einfach nur so Global mache dann habe ich sie ja nicht berechnet. Wenn ich sie jetzt in der zweiten Procedure ausgeben will funktioniert das zwar, aber die Zahl ist 0,000 obwohl sie dies nicht ist.
Wenn die Variable Global ist, reicht das dann wenn ich sie nur in Procedure eins berechne, um sie in Procedure 2 zu verwenden, oder muss ich die Berechnung irgendwo ausserhalb der Procedure in der Form oder Unit einfügen? Und wenn ja wo?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 20:59
Zeig doch mal was du hast und wo du das benutzen möchtest, dann kann man auch konkret antworten.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
FCCrobi2

Registriert seit: 15. Jan 2015
5 Beiträge
 
#6

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 21:09
Zeig doch mal was du hast und wo du das benutzen möchtest, dann kann man auch konkret antworten.
Der ganze Quelltext wäre hier viel zu lang,desswegen ist hier sehr viel rausgekürzt, ich hoffe aber es ist alles wichtige dafür drin.
Die Variablen EA,Quote1 und Quote2 berechne ich in Procedure 1 und benötige sie dort später auch. In der zweiten Procedure brauche ich diese drei allerdings
auch, möchte sie aber nur ungern neu berechnen. Desswegen verzweifle ich die letzten Stunden daran sie in mehreren Procedures nutzen zu können.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Elo1,Elo2: integer;
EA,Potenz,Pot,Quote1,Quote2: real;
begin
Elo1:=strtoint(Form1.Edit1.Text);
Elo2:=strtoint(Form1.Edit2.Text);
IF Elo1 > Elo2 then
  begin
  IF Elo1-Elo2>400 then
    begin
    Pot:=1;
    end
  else if Elo1-Elo2<400 then
    begin
    Pot:=(Elo1-Elo2)/400;
    end
  end
else IF Elo1<Elo2 then
  begin
  IF Elo2-Elo1>400 then
    begin
    Pot:=1;
    end
  else IF Elo2-Elo1<400 then
    begin
    Pot:=(Elo2-Elo1)/400;
    end
  else IF Elo1=Elo2 then
    begin
    Pot:=0;
    end
  end;

Potenz := Power(10, Pot);
[B]EA:=1/ (1 + Potenz)[/B];

IF Elo1>Elo2 then
  begin
[B] Quote1:=1/((1-EA)*100)*100;
  Quote2:=1/(EA*100)*100;[/B]
  end
else if Elo1<Elo2 then
  begin
[B] Quote1:=1/(EA*100)*100;
  Quote2:=1/((1-EA)*100)*100;[/B]
  end
else if Elo1=Elo2 then
  begin
[B] Quote1:=2;
  Quote2:=2;[/B]
end;




procedure TForm1.Button5Click(Sender: TObject);
var
z,Einsatz:integer;
begin
z:=0;
z:=Random(100);
Einsatz:=strtoint(Form1.Edit5.Text);
IF Form1.ComboBox3.ItemIndex=0 then begin
    IF [B]z<EA[/B] then
    begin
    Form1.Label23.Caption:=floattostr([B]Quote1*Einsatz[/B])+' Euro gewonnen!';
    end
    else if [B]z>EA[/B] then
    begin
    Form1.Label23.Caption:=floattostr(Einsatz)+' Euro verloren!';
  end
else if Form1.ComboBox3.ItemIndex=1 then begin
    IF [B]z<EA[/B] then
    begin
    Form1.Label23.Caption:=floattostr(Einsatz)+' Euro Verloren';
    end
    else if [B]z>EA[/B] then
    begin
    Form1.Label23.Caption:=floattostr([B]Quote2*Einsatz[/B])+' Euro gewonnen!';
    end;
end;

Geändert von FCCrobi2 (15. Jan 2015 um 21:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 21:17
Könntest du deinen Beitrag bitte bearbeiten und den Quelltext in die dafür vorgesehenen
Code:
[DELPHI]
[/DELPHI]
Tags setzen? So kann das kein ... lesen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
FCCrobi2

Registriert seit: 15. Jan 2015
5 Beiträge
 
#8

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 21:21
Könntest du deinen Beitrag bitte bearbeiten und den Quelltext in die dafür vorgesehenen
Code:
[DELPHI]
[/DELPHI]
Tags setzen? So kann das kein ... lesen
Ok
Wusst ich nicht
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#9

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 21:34
Um welche Variable handelt es sich jetzt konkret?
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
FCCrobi2

Registriert seit: 15. Jan 2015
5 Beiträge
 
#10

AW: Variable aus anderer Procedure auslesen

  Alt 15. Jan 2015, 21:35
Um welche Variable handelt es sich jetzt konkret?
EA, Quote1 und Quote 2.
  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 19:24 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