AGB  ·  Datenschutz  ·  Impressum  







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

LabelCompo zum Darstellen einer Zahl+Einheit

Ein Thema von F.W. · begonnen am 3. Mai 2004 · letzter Beitrag vom 3. Mai 2004
Antwort Antwort
Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 
#1

LabelCompo zum Darstellen einer Zahl+Einheit

  Alt 3. Mai 2004, 10:29
Hallöchen, ich arbeite gerade an einem Programm für den Haushalt (zum Nachrechnen, damit man nicht zu viel bezahlt ). Habe mir dazu eine LabelCompo gebastelt, in die man

-eine Zahl eingeben und auslesen kann (1. neue Property)
-die Einheit (z.B. €) eingeben und auslesen kann (2. neue Property)

Die Caption braucht eigentlich nurnoch ReadOnly zu sein, da man an ihr nurnoch alles zusammen abliest

Bsp:
Code:
   Zahl = 15,03;
   Einheit = '€';
-> Caption = '15,03 €';
Aber ich scheine aus der Übung gekommen zu sein (habs schon lange nicht mehr gemacht), im Test auf nem Formular war jedenfalls nichts zu sehen, bein momentan so ziemlich ratlos

Delphi-Quellcode:
unit EinheitLbl;

interface

uses
  Windows, Messages, SysUtils, Classes, Controls, StdCtrls;

type
  TEinheitLbl = class(TLAbel)
  private
     bEinheit: String;
     bZahl: Double;
     bCaption: String;
     procedure SetCaption(S: String);
     procedure SetZahl(D: Double);
     procedure SetEinheit(S: String);
     function GetEinheit: String;
     function GetZahl: Double;
     function GetCaption: String;
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
  published
    property Caption: String read GetCaption write SetCaption;
    property Einheit: String read GetEinheit write SetEinheit;
    property Zahl: Double read GetZahl write SetZahl;
    { Published-Deklarationen }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Samples', [TEinheitLbl]);
end;

function TEinheitLbl.GetCaption: String;
begin
   try
 Result := bCaption;
   except
 on EConvertError do
    Result := '#ERROR#';
   end;
end;

procedure TEinheitLbl.SetCaption(S: String);
begin
 bCaption := S;
end;

procedure TEinheitLbl.SetZahl(D: Double);
begin
 bZahl := D;
 bCaption := FloatToStr(bZahl)+' '+bEinheit;
end;

procedure TEinheitLbl.SetEinheit(S: String);
begin
 bEinheit := S;
 bCaption := FloatToStr(bZahl)+' '+bEinheit;
end;

function TEinheitLbl.GetEinheit: String;
begin
   try
 Result := bEinheit;
   except
 on EConvertError do
    Result := '#ERROR#';
   end;
end;

function TEinheitLbl.GetZahl: Double;
begin
   try
 Result := bZahl;
   except
 on EConvertError do
    Result := 0;
   end;
end;

end.
Das ist mein TEinheitLbl.

Bitte helft mir!
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: LabelCompo zum Darstellen einer Zahl+Einheit

  Alt 3. Mai 2004, 10:52
Hei F.W.,

wo setzt Du denn die Eigenschaft caption von TLabel?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#3

Re: LabelCompo zum Darstellen einer Zahl+Einheit

  Alt 3. Mai 2004, 11:05
Moin!

Und warum definierst du noch eine Caption ? Du leitest ja von TLabel und nicht von TCustomLabel ab und somit hast du schon eine Property Caption die du überschreibst und neu definierst, aber wozu? Im Normalfall kann die doch sogar versteckt bleiben, da die Caption sich immer aus deinen 2 neuen Properties zusammensetzt.

MfG
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 
#4

Re: LabelCompo zum Darstellen einer Zahl+Einheit

  Alt 3. Mai 2004, 12:28
Mit der Caption ist das so, die wollte ich erst nochmal mit hinschreiben, um eine NurLesenEigenschaft aus ihr zu machen, aber irgendwann ist mir aufgefallen, das ich dann nichtmal die zwei anderen in sie reinschreiben kann.

Wie gesagt, da sind garantiert mehr als 10 Sachen falsch, aber ich brings nicht mehr richtig!

So please help!
  Mit Zitat antworten Zitat
Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 
#5

Re: LabelCompo zum Darstellen einer Zahl+Einheit

  Alt 3. Mai 2004, 13:16
Ach! Is ja ganz klar, dass da nix mehr angezeigt wird, wenn ich Caption neu definiere! Ich hab jetzt alles was mit der property Caption zusammenhängt weggemacht (außer das gleichsetzen der Caption beim Ändern der zwo neuen Werte)

Aber trotzdem danke!
  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 20:49 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