AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Private Variable "verweigert Zutritt"

Ein Thema von VinzRitt · begonnen am 21. Sep 2011 · letzter Beitrag vom 22. Sep 2011
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

AW: Private Variable "verweigert Zutritt"

  Alt 21. Sep 2011, 22:56
Hast du auch irgendwo die Klasse erzeugt?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
VinzRitt

Registriert seit: 21. Sep 2011
5 Beiträge
 
#2

AW: Private Variable "verweigert Zutritt"

  Alt 21. Sep 2011, 23:36
wie meinen?

Edit: Die Klasse wird ja aufgerufen, per Debugger bin ich auch einige Schritte in Prozeduren der Klasse navigiert. Auch setAuge () lässt sich aufrufen, aber m_Auge will einfach keinen Wert annehmen (lässt sich übrigens auch nicht über Debugger als Ausdruck überwachen)

Geändert von VinzRitt (21. Sep 2011 um 23:39 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: Private Variable "verweigert Zutritt"

  Alt 21. Sep 2011, 23:45
Die Klasse wird ja aufgerufen,
Dann zeig mal wie.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
VinzRitt

Registriert seit: 21. Sep 2011
5 Beiträge
 
#4

AW: Private Variable "verweigert Zutritt"

  Alt 21. Sep 2011, 23:54
Hier der Abgespeckte Quelltext:

Delphi-Quellcode:
unit main;

interface

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

type
  TForm1 = class(TForm)
    LPunktzahl: TLabel;
    BBWuerfel1: TBitBtn;
    BBWuerfel2: TBitBtn;
    BBWuerfel3: TBitBtn;
    procedure BBWuerfel1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

type
  TWuerfel = class (TObject)
  private
    // Membervariablen
    Augen: integer;
  public
    // Memberfunktionen
    function getAugen (): integer;
    procedure setAugen (worth: integer);

    procedure werfen (TBBActual: TBitBtn);
  end;

var
  Form1: TForm1;
  Wuerfel: array[1..3] of TWuerfel;

implementation

{$R *.dfm}

//TWuerfel
//Memberfunktionen
// getAugen
function TWuerfel.getAugen (): integer;
begin
  getAugen:= Augen;
end; //getAugen

// setAugen
procedure TWuerfel.setAugen (worth: integer);
begin
  Augen:= worth; // Hier wird Zugriffsverletzung angezeigt
end; //setAugen

//Beliebige Funktionen
// werfen
// Aufgabe: Zufallszahl bestimmen und auf Würfel ausgeben
procedure TWuerfel.werfen (TBBActual: TBitBtn);
begin
  // Zufallszahl würfeln
  randomize;

  setAugen (random (6)+1);

  // Ergebnis anzeigen
  TBBActual.Glyph.LoadFromFile (intToStr (getAugen) + '.bmp');
end; //werfen


//TForm1
// BBWuerfel1Click
procedure TForm1.BBWuerfel1Click(Sender: TObject);
begin
  Wuerfel[1].werfen (BBWuerfel1);
end; //BBWuerfelClick

end.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

AW: Private Variable "verweigert Zutritt"

  Alt 22. Sep 2011, 00:01
Und wo wird eine Instanz der Klasse erzeugt? Du solltest dich noch mal mit den Grundlagen auseinandersetzen: http://www.michael-puff.de/Programmi...phi/Tutorials/
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
VinzRitt

Registriert seit: 21. Sep 2011
5 Beiträge
 
#6

AW: Private Variable "verweigert Zutritt"

  Alt 22. Sep 2011, 00:05
nochmal ist gut, ich habe das in delphi noch NIE gemacht!!!

Aber danke!!! Bei google, hab ich dazu nämlich WENIG hilfreiches bekommen...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

AW: Private Variable "verweigert Zutritt"

  Alt 22. Sep 2011, 00:13
Delphi-Quellcode:
type
  TWuerfel = class (TObject)
  private
    FAugen: integer;
    function GetAugen: Integer;
    procedure SetAugen(Value: Integer);
  public
    property Augen: Integer read GetAugen write SetAugen;
    procedure Werfen (TBBActual: TBitBtn);
  end;

var
  Form1: TForm1;
  Wuerfel: array[1..3] of TWuerfel; // Warum global und nicht ein Feld der TForm Klasse??
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:16 Uhr.
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