AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi abgeleitete visuelle Klasse (TLabel) nicht sichtbar
Thema durchsuchen
Ansicht
Themen-Optionen

abgeleitete visuelle Klasse (TLabel) nicht sichtbar

Ein Thema von palmakunkel · begonnen am 11. Nov 2020 · letzter Beitrag vom 22. Nov 2020
Antwort Antwort
palmakunkel

Registriert seit: 3. Dez 2005
Ort: Coswig
18 Beiträge
 
Delphi 11 Alexandria
 
#1

abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 11. Nov 2020, 10:54
Delphi-Version: 10.3 Rio
Ist eigentlich banal, kein Compiler-Fehler, kein Laufzeitfehler, trotzdem sehe ich das dynamisch erzeugte Label nicht. Hab nichts gefunden im Netz, was mein Hirn erhellt. Kann mir einer/eine helfen?

Delphi-Quellcode:
unit UnitMain;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TFlatBtn = class(TLabel)
  private
    procedure LabelPerfClick(Sender: TObject);
  public
    constructor Create(AOwner: TComponent); override;
  end;

  TForm1 = class(TForm)
    procedure FormShow(Sender: TObject);
  private
     MyBtn: TFlatBtn;
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TFlatBtn.LabelPerfClick(Sender: TObject);
begin
   ShowMessage('Klappt');
end;

constructor TFlatBtn.Create (AOwner: TComponent);
begin
  inherited Create (AOwner);
  Left := 0;
  Top := 0;
  Width := 200;
  Height := 200;
  Alignment := taCenter;
  Anchors := [];
  AutoSize := False;
  ParentColor := False;
  Transparent := False;
  Color:=clRed;
  Layout := tlCenter;
  StyleElements := [];
  WordWrap:=true;
  Visible:=true;
  Enabled:=true;
  OnClick:=LabelPerfClick;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  MyBtn:=TFlatBtn.Create(Form1);
  MyBtn.Name:='MyName';
end;

end.
Gunter Dickopf
sie passten gut zueinander - geometrisch gesehen

Geändert von Daniel (11. Nov 2020 um 11:52 Uhr) Grund: Code in Delphi-Tags gesetzt.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#2

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 11. Nov 2020, 12:23
Liegt vielleicht an der leeren Caption?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 11. Nov 2020, 12:28
Und am fehlenden Parent?
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin
  MyBtn:=TFlatBtn.Create(self);
  MyBtn.Caption := 'Wuppdi';
  MyBtn.Parent := self;
  MyBtn.Name:='MyName';
end;
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
palmakunkel

Registriert seit: 3. Dez 2005
Ort: Coswig
18 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 22. Nov 2020, 11:01
Vielen Dank an beide! Problem leider nicht gelöst. Das Label ist nicht nur nicht sichtbar, sondern nicht da. Wenn ich in die obere linke Ecke klicke (TopLeft 0/0 BottomRight 200/200) müsste ja ShowMessage kommen, wenn z.B. das Label nur transparent wäre. Aber es tut nix.
Gunter Dickopf
sie passten gut zueinander - geometrisch gesehen
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#5

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 22. Nov 2020, 11:34
Bist du denn mal mit dem Debugger Schritt für Schritt (F7) durchgegangen?

Grüße
Dalai
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 22. Nov 2020, 12:08
Hallo,
Setz mal Width direkt.oder AutoSize auf True.
Heiko

Geändert von hoika (22. Nov 2020 um 12:24 Uhr)
  Mit Zitat antworten Zitat
palmakunkel

Registriert seit: 3. Dez 2005
Ort: Coswig
18 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: abgeleitete visuelle Klasse (TLabel) nicht sichtbar

  Alt 22. Nov 2020, 22:18
Danke an alle, Problem gelöst, MyBtn.Parent:=self war doch die Lösung, wie DeddyH vorgeschlagen hatte. Dass es zunächst nicht geklappt hat, lag daran, dass mir die Verknüpfung von OnShow mit der zugehörigen Prozedur abhanden gekommen war, warum auch immer. Da passierte nach jedem Änderungsversuch - nichts. So, ich kann jetzt glücklich in die neue Woche starten. Danke!
Gunter Dickopf
sie passten gut zueinander - geometrisch gesehen
  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 18:43 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