Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Komponentenentwicklung für Fortgeschrittene (https://www.delphipraxis.net/79664-komponentenentwicklung-fuer-fortgeschrittene.html)

MaBuSE 26. Okt 2006 13:59

Re: Komponentenentwicklung für Fortgeschrittene
 
Zitat:

Zitat von Trantor
Hallo Mabuse,
ok jetzt bin ich neidisch und dankbar - (kniefall) - das ist genau die Kompo die ich seit nem halben Jahr suche.
Leider bin ich nicht so fit das in 15 Minuten zu programmieren- ich hätte jetzt sicher noch einiges länger gebraucht .
Jetzt jetzt muss ich nur ncoh ein onclick einfügen und es ist genau das wa sich brauch.
supervielen dank.
Trantor

Gern geschehen.

ich habe Deine onClick Ereignisse oben in den Quelltext eingefügt.
Delphi-Quellcode:
...
  published
...
    property OnClick;
    property OnDblClick;
...
Wie gesagt, das ist nur eine Beispielkomponente. Es fehlen noch einige Dinge.
z.B. ein ordenliches Stretch das die Proportionen des Bildes nicht zerstört, AutoSize, ...
[edit]
Ach ja. der Rahmen wird über das Bild gezeichnet. Du siehst also auf dem Bildschirm nicht das ganze Bild.
Das würde sich leicht korrigieren lassen, in dem Du in der DestRect Funktion das Rechteck um den Rahmen verkleinerst.
Also von z.b. (1, 1, clientwidth-1, cliendheight-1) statt (0, 0, ClientWidth, ClientHeight)
Du könntest ja eine property BorderOverlay:Boolean einführen um das den Benutzer entscheiden zu lassen ;-)
[/edit]

Aber das ist nicht sonderlich schweer.

Die Komponente kann Dir als Grundlage dienen um Deine persönliche TSuperImage Komponente zu schreiben :)

Viel Spaß.

ps: Wenn ich erlich bin: plus nochmal 5 Min für die Kommentare ;-) macht also 20 Min :mrgreen:

MaBuSE 26. Okt 2006 14:07

Re: Komponentenentwicklung für Fortgeschrittene
 
Zitat:

Zitat von MaBuSE
ich habe Deine onClick Ereignisse oben in den Quelltext eingefügt.
Delphi-Quellcode:
...
  published
...
    property OnClick;
    property OnDblClick;
...

Du kannst auch noch folgende Eigenschaften und Ereignisse implementieren (ohne was zu programmieren)
Die sind schon vorhanden, nur unsichtbar.
Der Übersichtlichkeit halber baue ich das nicht oben in das Beispiel ein.

Einfach den published Abschnitt um folgende Zeilen erweitern:
Delphi-Quellcode:
...
published
    property Align;
    property Anchors;
    property Constraints;
    property DragCursor;
    property DragKind;
    property DragMode;
    property Enabled;
    property ParentShowHint;
    property PopupMenu;
    property ShowHint;
    property Visible;
    property OnClick;
    property OnContextPopup;
    property OnDblClick;
    property OnDragDrop;
    property OnDragOver;
    property OnEndDock;
    property OnEndDrag;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnStartDock;
    property OnStartDrag;
...

Trantor 26. Okt 2006 14:12

Re: Komponentenentwicklung für Fortgeschrittene
 
Ja hab gesehn das das Stretch noch nicht ganz so ist - aber das krieg ich sicher locker hin.

Sollten wir uns in Frankfurt mal sehn - spendier ich ein Bierchen. :cheers:

Trotzdem danke für die Mühe - hätte damit nicht gerechnet - woanders heist es oft -lies hier -schau da (auch wenn ich in diesem fall wirklich sehr viel gesucht hab letztendlich hab ich ja nach nem tutorial gesucht wo komponentenentwicklung etwas genauer erklärt wird - aber ich denke der background von vielem kann sich nur durch erfahrung aneignen ) - Was muss man denn studieren um da so fit zu werden? *g*

gruß Trantor

MaBuSE 26. Okt 2006 14:24

Re: Komponentenentwicklung für Fortgeschrittene
 
Zitat:

Zitat von Trantor
Trotzdem danke für die Mühe - hätte damit nicht gerechnet - woanders heist es oft -lies hier -schau da (auch wenn ich in diesem fall wirklich sehr viel gesucht hab letztendlich hab ich ja nach nem tutorial gesucht wo komponentenentwicklung etwas genauer erklärt wird - aber ich denke der background von vielem kann sich nur durch erfahrung aneignen ) - Was muss man denn studieren um da so fit zu werden? *g*

Delphi :mrgreen:

Bei Delphi wurde schon immer (außer bei den kostenlosden Versionen) die komplette VCL im Quelltext mitgeliefert.
z.B. C:\Programme\Borland\Delphi7\Source
Hier kann man schauen, wie die Borlander das gemacht haben.
Dort habe ich am meisten gelernt.

Und dann gibt es da noch die Hilfe und die Handbücher.
In Delphi 7 z.B. kann man mal folgendes machen:

Menü -> Hilfe -> Delphi-Hilfe

Dann nicht in die Liste "Index" oder "Suchen" gehen sondern sich das "Inhalt" mal genauer anschauen.
Dort sind nach Themengebieten sortiert alle Informationen enthalten.

In Deinem Fall: Komponentenentwicklung -> Einführung in die Komponentenentwicklung

Da einfach mal durchklicken und sich alle Kapitel anschauen.

Das ist alles in Deutsch !
Und obwohl die Hilfe früher mal besser war, ist sie immer noch voller wertvoller Informationen.

Viel Spaß

ps: schau Dir nochmal meinen obigen Beitrag an, den hatte ich editiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:58 Uhr.
Seite 2 von 2     12   

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