AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Vergabe von ID's und deren Auswirkung
Thema durchsuchen
Ansicht
Themen-Optionen

Vergabe von ID's und deren Auswirkung

Ein Thema von EWeiss · begonnen am 20. Mai 2011 · letzter Beitrag vom 22. Mai 2011
Antwort Antwort
Seite 3 von 3     123   
EWeiss
(Gast)

n/a Beiträge
 
#21

AW: Vergabe von ID's und deren Auswirkung

  Alt 20. Mai 2011, 17:49
Wenn man ID's durch die Gegend schiess ist das prozedural Runtergebolzt.
Die Aussage ist Unsinn. Ich glaube, hier hat noch niemand verstanden wozu diese IDs benutzt werden. Es wird eine Schaltfläche mit CreateWindow erstellt. Jetzt muss ich im Code auf dies Schaltfläche zugreifen können, unabhängig davon, ob ich objektorientiert arbeite oder nicht. Dazu habe ich zwei Möglichkeiten: 1. Ich kann mir das Handle merken, welches mir die Funktion zurückgibt. 2. Ich kann dem Steuerelement im Funktionsaufruf eine eindeutige ID geben, über die ich dann auf das Steuerelement zugreifen kann. Welche Methode man bevorzugt ist Geschmackssache. Wobei die erste Möglichkeit nicht möglich ist, wenn man seine Steuerelemente mit einem Ressourceneditor erstellt und nicht zur Laufzeit. Ob ich den restlichen Code jetzt objektorientiert erstelle oder prozedural, spielt keine Rolle. In beiden Fällen muss ich meine Steuerelemente irgendwie ansprechen können.
Gut beschrieben
Deshalb auch!
Zitat:
Was ihr immer mit eurem Objektorientiert habt.
Zur besseren verständigung..
Delphi-Quellcode:
function GetMainItem(hOwner: HWND; UseID: integer): integer;

function TSkinEngine.GetMainItem(hOwner: HWND; UseID: integer): integer;
begin

  Result := GetDlgItem(hOwner, UseID);
end;
Über meine ID kann ich jetzt zu jederzeit mein Handle abfragen über die Spezifizierte ID_

Objektorientiert oder nicht ?
Noch näher dran geht wohl nicht! Spagetthicode na ja .. Warum auch nicht. Ist mal was anderes und nicht so fade.

gruss

Geändert von EWeiss (20. Mai 2011 um 17:55 Uhr)
  Mit Zitat antworten Zitat
FredlFesl

Registriert seit: 19. Apr 2011
293 Beiträge
 
Delphi 2009 Enterprise
 
#22

AW: Vergabe von ID's und deren Auswirkung

  Alt 20. Mai 2011, 22:47
Delphi-Quellcode:
PROP_IMAGE_BACK = 1;
GRID_IMAGE = PROP_IMAGE_BACK;
Funktioniert!

Delphi-Quellcode:
PROP_IMAGE_BACK = 1;
GRID_IMAGE = 1;
Funktioniert nicht!

obwohl beides letztendlich das gleiche Ergebnis liefert nämlich 1

gruss
Gib mal Code, wo das nicht funktioniert. Kann ja gar nicht sein.
Das Bild hängt schief.
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#23

AW: Vergabe von ID's und deren Auswirkung

  Alt 20. Mai 2011, 23:22
Grob gesagt, funktioniert es nicht, wenn Du eine Konstante verwendest. Also einen Wert der durch falschen Speicherzugriff im Programmablauf überschrieben werden könnte.

Ich denke die Werte Deiner Konstanten hast Du schon kurz vor Verwendung mit dem Debugger überprüft.

Letztlich sind die geposteten Codezeilen syntaktisch korrekt, was Du selber weist, aber als Außenstehender wird man damit ohne weiteren Codeeinblick unmöglich auf den Fehler schließen können.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#24

AW: Vergabe von ID's und deren Auswirkung

  Alt 22. Mai 2011, 21:28
OT?: Mal wieder doof nachgefragt. Woher weiß der Compiler eigentlich wenn man eine Konstante macht, was das für ein Typ ist?

const Willi = 1;

Ist Willi nun Integer, oder Byte,...

/OT.
Ralph
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#25

AW: Vergabe von ID's und deren Auswirkung

  Alt 22. Mai 2011, 21:40
[OT]
OT?: Mal wieder doof nachgefragt. Woher weiß der Compiler eigentlich wenn man eine Konstante macht, was das für ein Typ ist?

const Willi = 1;

Ist Willi nun Integer, oder Byte,...

/OT.
Weiß er nicht. Solche Konstanten werden daher auch als „untypisiert“ bezeichnet. Sie funktionieren vereinfacht gesagt, indem der Compiler im Quellcode nach „Willi“ sucht und es durch „1“ ersetzt.
Bei typisierten Konstanten ist es anders:
const Willi: integer = 1; In diesem Fall verhält sich Willi wie eine globale Variable (und kann auch zur Laufzeit manipuliert werden über Pointer oder einen Compilerschalter, der änderbare Konstanten erlaubt).
[/OT]
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 17:39 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