AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Wann sind meine Eigenschaften verfügbar?
Thema durchsuchen
Ansicht
Themen-Optionen

Wann sind meine Eigenschaften verfügbar?

Ein Thema von newgro · begonnen am 3. Apr 2007 · letzter Beitrag vom 4. Apr 2007
Antwort Antwort
Seite 1 von 2  1 2      
newgro

Registriert seit: 26. Mär 2007
53 Beiträge
 
Delphi 2006 Professional
 
#1

Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:06
Hi *,

ich wollte in einer Form einen Record definieren und im Constructor darauf zugreifen.
Leider bekomme ich immer einen EReadError 'Ungültiger Eiegenschaftswert'. Ab wann kann
ich auf die Variablen zugreifen? Wie kann ich das Problem lösen (Ich möchte die Werte
belegen, bevor irgendwelche Methoden darauf zugreifen)?

Cheers
Per

Delphi-Quellcode:
unit myunit;

interface

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

type
  TModel = record
    srcYear: integer;
    targetYear: integer;
  end;

type
  Tfrm_Editor = class(TForm)
    btnOk: TXFBitBtn;
    tfSrcYear: TEdit;
    tfTargetYear: TEdit;
  private
    { Private-Deklarationen }
    canceled: boolean;
    model: TModel;
  public
    { Public-Deklarationen }
    Constructor Create(form: TForm; year: integer); overload;
  end;

var
  frm_Editor: Tfrm_Editor;

implementation

{$R *.dfm}

{
  Creator.
}

Constructor Tfrm_Editor.Create(form: TForm; year: integer);
begin
  self.Create(form);
  canceled:=false; <--- wirft den error
  model.srcYear:=year;
  model.targetYear:=year + 1;
end;
... {weitere Methoden)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:11
Wie wäre es mit einem inherited am Anfang des eigenen Konstruktors?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:14
Dein Constructor sieht etwas komisch aus. Was hast du vor?
Markus Kinzler
  Mit Zitat antworten Zitat
newgro

Registriert seit: 26. Mär 2007
53 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:19
@Bernhard: Meinst Du so? Das geht auch nicht (gleicher Fehler, gleiche Stelle)
@mkinzler: Ich möchte beim Erzeugen der Form gleich einen Wert vorgeben.

PS: Bin neu bei delphi

Cheers
Per

Delphi-Quellcode:
{
  Creator.
}

Constructor Tfrm_Editor.Create(form: TForm; from: integer);
begin
  inherited Create(form);
  canceled:=false;
  model.srcYear:=from;
  model.targetYear:=from + 1;
end;
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:20
Dann würde ich .Loaded() überschreiben
Markus Kinzler
  Mit Zitat antworten Zitat
newgro

Registriert seit: 26. Mär 2007
53 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:23
Ich gehe mal davon aus, das Loaded() nach dem Laden der Klasse ausgeführt wird. Wie soll ich denn dort die Defaultwerte reinbekommen?

Cheers
Per
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:35
Loaded wird aufgerufen nachdem alle Einstellungen aus der dfm geladen wurde.
Markus Kinzler
  Mit Zitat antworten Zitat
newgro

Registriert seit: 26. Mär 2007
53 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:36
Und wie bekomme ich meinen Standardwert da rein? Es wird doch sicher nicht mein Standardwert bei Loaded mit übergeben.

Danke für die Hilfe
Per
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:40
Nein, aber du kannst ihn innerhalb Loaded setzen.
Markus Kinzler
  Mit Zitat antworten Zitat
newgro

Registriert seit: 26. Mär 2007
53 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Wann sind meine Eigenschaften verfügbar?

  Alt 3. Apr 2007, 11:46
Kurze Erläuterung (ich denke nämlich wir sprechen von 2 versch. Situationen)

Ich zeige in FormA Daten für ein Jahr an (Combobox mit Jahren zur Auswahl).
Nun kann man in FormA auf einen Knopf drücken und damit die Daten in ein anderes Jahr
übertragen. Um das Zieljahr festzulegen, wird FormB angezeigt (s.o.). Das Ausgangsjahr
in FormB soll das Jahr sein, das gerade in FormA gewählt ist.

Ich hoffe, das macht mein Problem etwas klarer.

Cheers
Per
  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 10:42 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