AGB  ·  Datenschutz  ·  Impressum  







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

neue ListBox abgeleiten (OOP)

Ein Thema von Alex_ITA01 · begonnen am 5. Jan 2005 · letzter Beitrag vom 5. Jan 2005
Antwort Antwort
Alex_ITA01

Registriert seit: 22. Sep 2003
1.134 Beiträge
 
Delphi 12 Athens
 
#1

Re: neue ListBox abgeleiten (OOP)

  Alt 5. Jan 2005, 13:14
Ich habe es dann auch mit dem Left := 0 gemerkt
Folgende Lösung habe ich jetzt:

Delphi-Quellcode:
unit HeaderListe;

interface

uses
  SysUtils, Classes, Controls, StdCtrls, Types, Windows, Graphics, ComCtrls;

type
  THeaderListBox = class(TListBox)
  private
    { Private-Deklarationen }
    FHeaderControl : THeaderControl;
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    constructor Create(AOwner:TComponent); override;
    destructor Destroy; override;
  published
    { Published-Deklarationen }
  end;
{ ---------------------------------------------------------------------------- }
procedure Register;
{ ---------------------------------------------------------------------------- }
implementation
{ ---------------------------------------------------------------------------- }
procedure Register;
begin
  RegisterComponents('Test', [THeaderListBox]);
end;
{ ---------------------------------------------------------------------------- }
{ THeaderListBox }
{ ---------------------------------------------------------------------------- }
constructor THeaderListBox.Create(AOwner: TComponent);
var
  HS: THeaderSection;
begin
  inherited Create(AOwner);
  Self.Left := 248;
  Self.Width := 249;
  Self.Height := 185;
  Self.Top := 100;
  Self.Style := lbOwnerDrawFixed;

  FHeaderControl := THeaderControl.Create(AOwner);
  FHeaderControl.Parent := TWinControl(AOwner);
  FHeaderControl.Align := alCustom;
  FHeaderControl.Left := 248;
  FHeaderControl.Width := 249;
  FHeaderControl.Height := 20;
  FHeaderControl.Top := 81;
  FHeaderControl.Style := hsButtons;
  FHeaderControl.Show;

  with FHeaderControl do
  begin
    HS := Sections.Add;
    HS.Text := 'Item1';
    HS.Width := Width div 2;

    HS := Sections.Add;
    HS.Text := 'Item2';
    HS.Width := Width div 2;
  end;
end;
{ ---------------------------------------------------------------------------- }
destructor THeaderListBox.Destroy;
begin
  FHeaderControl.Free;
  inherited;
end;
{ ---------------------------------------------------------------------------- }
end.
Wenn ich die Kompo zur Laufzeit anzeige funktioniert es.Wenn ich sie aber installiere, dann habe ich auf dem Formular 2Kompo's die ich einzeln anwählen kann und wenn ich F9 drücke kommt ein Fehler:
Exception EClassNotFound in Modul .....
Klasse THeaderControl nicht gefunden.

Wenn ich im Contructor aber folgendes schreibe, dann kommt der Fehler nicht aber ich sehe die HeaderKompo dann zur Designzeit nicht:

Delphi-Quellcode:
  inherited Create(AOwner);
  Self.Left := 248;
  Self.Width := 249;
  Self.Height := 185;
  Self.Top := 100;
  Self.Style := lbOwnerDrawFixed;
  Self.OnDrawItem := DrawAllItem;
 
  if ComponentState = [csDesigning] then Exit;
  begin
    FHeaderControl := THeaderControl.Create(AOwner);
    FHeaderControl.SetSubComponent(True);
    FHeaderControl.Parent := TWinControl(AOwner);
    FHeaderControl.Align := alCustom;
    FHeaderControl.Left := 248;
    FHeaderControl.Width := 249;
    FHeaderControl.Height := 20;
    FHeaderControl.Top := 81;
    FHeaderControl.Style := hsButtons;
    FHeaderControl.Show;
    FHeaderControl.OnSectionResize := SectionResize;
  end;
Ich hoffe ihr könnt mir helfen...
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  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 15:53 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