AGB  ·  Datenschutz  ·  Impressum  







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

[XE5]: Nutzung des Datenmoduls

Ein Thema von Kralle · begonnen am 27. Jan 2014 · letzter Beitrag vom 31. Jan 2014
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

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

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 07:41
Es steht ja da: die Setter-Methode muss statisch sein.
Delphi-Quellcode:
   Global = class
     private
       class var FSymboltyp : Integer;
       class procedure SetSymboltyp (const Value : Integer); static; //hier
     public
       class property Symboltyp : Integer read FSymboltyp write SetSymboltyp;
   end;
Allerdings würde ich persönlich bei der üblichen Nomenklatur bleiben und dem Klassennamen noch ein "T" voranstellen.
Dies hier ist die Ausnahme von der Regel, da diese Klasse kein Type im Sinne von Instanzvorlage werden soll.
Von daher würde ich dieser Klasse eben kein T voranstellen
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
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#2

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 07:44
Dann sag mal bei Emba Bescheid, dass sie z.B. TEncoding falsch benannt haben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  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
 
#3

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 07:49
Dann sag mal bei Emba Bescheid, dass sie z.B. TEncoding falsch benannt haben.
Haben sie nicht, denn das ist ein Type.
Oder welchen Typ hat die Instanz UTF8 ?

Hier kann man es sehen
http://docwiki.embarcadero.com/Libra...TEncoding.UTF8
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)

Geändert von Sir Rufo (31. Jan 2014 um 07:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#4

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 07:54
http://docwiki.embarcadero.com/Libra...tils.TEncoding
Zitat:
TEncoding = class
Und so steht es auc in meiner SysUtils.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Kralle

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

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 07:59
Moin,

es gibt jetzt zwar beim Compilieren keine Fehlermeldung mehr, aber der Variableninhalt wird nicht übertragen.

Setzen:
Delphi-Quellcode:
unit allgemein;

...

implementation

{$R *.dfm}
uses datenablage;

procedure TForm_Allgemein.CoB_SymboltypChange(Sender: TObject);
begin
 Global.Symboltyp:= CoB_Symboltyp.ItemIndex;
 CB_Activate_Symbol.Caption:=IntToStr(CoB_Symboltyp.ItemIndex)+'##'+inttostr(datenablage.Global.Symboltyp);
end;
Auslesen:
Delphi-Quellcode:
unit anschluesse;

...

implementation

{$R *.dfm}
uses datenablage;

procedure TForm_Anschluesse.FormShow(Sender: TObject);
begin
 lbledt_AnzAnschluesse.EditLabel.Caption:=IntToStr(Global.Symboltyp);
 if Global.Symboltyp in [7,8,9,10,11,12,13,14] then
Hier kommt nichts an.
Warum?

Gruss Heiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  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
 
#6

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 08:08
Das können wir dir nicht sagen, weil wir nicht wissen, in welcher Reihenfolge das aufgerufen wird.

Wenn die Form Anschlüsse schon angezeigt wird und du dann erst die Änderung machst, dann "kommt" der Wert da nicht an, weil der Wert ja nicht durch Magie die Methode aufruft.
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
Kralle

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

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 08:20
Hallo Rufo;

Das können wir dir nicht sagen, weil wir nicht wissen, in welcher Reihenfolge das aufgerufen wird.

Wenn die Form Anschlüsse schon angezeigt wird und du dann erst die Änderung machst, dann "kommt" der Wert da nicht an, weil der Wert ja nicht durch Magie die Methode aufruft.
Also, das erstmal werden alle Units so aufgerufen:
Delphi-Quellcode:
procedure TMainForm.FormCreate(Sender: TObject);

begin
// Die Einzelnen Units an die TABs binden
 Form_Allgemein:= TForm_Allgemein.Create(Self);
 Form_Allgemein.Parent:=Tab01_Allgemein;
 Form_Allgemein.Show;
 //
  //
 Form_Anschluesse:= TForm_Anschluesse.Create(Self);
 Form_Anschluesse.Parent:=Tab05_Anschluesse;
 Form_Anschluesse.Show;
end;
Beim laufenden Programm wähle ich erst auf dem TAB "Allgemein" den Symboltyp aus und Wechsel dann auf den TAB "Anschluesse".

Was mir gerade noch auffiel: Ich habe kein "Blauen Punkte" vor den Codezeilen und Breakpoints nutzen auch nichts.
Unter XE2 hat damals das geholfen:
Zitat:
Nachdem ich in den Projekteinstellungen beim Linker den Punkt "Mit
Laufzeit-Packages linken" aktiviert habe, klappt das auch mit den debuggen.
Unter XE5 klapt das nicht.

Gruß Heiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#8

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 08:12
Wo landest Du, wenn Du in beiden Units einmal mit STRG-Linksklick auf "Global" abspringst? Ist das auch dieselbe Stelle?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Kralle

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

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 08:22
Moin,

Wo landest Du, wenn Du in beiden Units einmal mit STRG-Linksklick auf "Global" abspringst? Ist das auch dieselbe Stelle?
Beides mal auf dem "G" von Global:
Delphi-Quellcode:
unit datenablage;

interface
 type
   Global = class
Gruß HEiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  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
 
#10

AW: [XE5]: Nutzung des Datenmoduls

  Alt 31. Jan 2014, 08:28
Aber dann ist es doch logisch, dass du die Änderung nicht in der Form siehst.

Du holst die Werte beim OnShow Event ab und der ist doch schon lange durch
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
Antwort Antwort

 

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 06: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