AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Komponenten mit dem Formular-Designer entwerfen
Thema durchsuchen
Ansicht
Themen-Optionen

Komponenten mit dem Formular-Designer entwerfen

Offene Frage von "Der schöne Günther"
Ein Thema von Der schöne Günther · begonnen am 12. Mär 2014 · letzter Beitrag vom 12. Mär 2014
 
Der schöne Günther

Registriert seit: 6. Mär 2013
6.191 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Komponenten mit dem Formular-Designer entwerfen

  Alt 12. Mär 2014, 14:57
Mein Ziel: Ich möchte, ausgehend von einem TFrame, eine eigene VCL-Komponente erstellen. Mit eigenen Properties und Event-Handler.

Das bekomme ich relativ flott hin und bin vom Ergebnis begeistert.

Ich glaube aber nicht, dass ich alles richtig gemacht habe, vor allem da das benutzende Projekt die .DFM-Datei des Frames im Suchpfad haben muss.

Ich gehe so vor:
  • Neue Komponente, ausgehend von TFrame erstellen, in neues Package
  • Die automatisch angelegte Unit kann ich wegwerfen. Das ist eine reine Unit ohne Formular dahinter.
  • Ich füge meinem "Projekt" einen VCL-Frame hinzu.
  • Ich bastele den Frame so zusammen, wie ich ihn haben möchte. Event-Handler, interne Logik, alles.
  • Ich füge in meiner Frame-Unit (oder einer separaten) eine Prozedur "Register" ein und registriere die Kompente so wie ich es für richtig halte
  • Ich installiere die Komponente

Wenn ich meine Komponente in ein lauffähiges Projekt einbauen möchte habe ich sie jetzt wie einen TButton in der Tool-Palette und kann damit anstellen, was ich mag. Allerdings muss das Projekt den Pfad, an welchem die DFM des Frames liegt im Suchpfad haben. Ich habe keine Ahnung warum.

Weiterhin bekomme ich beim Kompilieren einen Hinweis
Code:
[dcc32 Hinweis] H2161 Warning: Duplicate resource: Type 10 (RCDATA), ID TMYFRAME; File C:\Pfad\MyComponent\TestProject\..\MyFrameUnit.dfm resource kept; file C:\Pfad\MyComponent\MyFrameUnit.dfm resource discarded.
An den Pfaden sieht man, dass es er ein und dieselbe Datei für zwei verschiedene hält.


Ich würde mich freuen wenn mir jemand erklären kann warum das benutzende Projekt die DFM zur Kompilierzeit kennen muss. Und ob ich den Kompilierhinweis abstellen oder beruhigt ignorieren kann. Und ob ich die Komponente dann auch im C++ Builder verwenden kann habe ich noch überhaupt nicht ausprobiert. Sollte gehen, oder?
  Mit Zitat antworten Zitat
 


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 14:25 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 by Thomas Breitkreuz