TCalcEdit - Calculator
TCalcEdit - Calculator
Hallo
Ich bin Neueinsteiger in der Gui Programmierung.
Ich möchte die Komponente TCalcEdit verwenden. Ich weiss leider nicht wie ich den Pop-Up Calculator
des TCalcEdit Widgets relativ zum Fenster platzieren kann. Ich meine damit nach Kompilierung des
Programms und Ausführung wird die Teilkomponente Calculator immer in der Mitte des Bildschirms
platziert, unabhaengig davon wo mein Anwendungsfenster sich gerade befindet.
Da dies mein erster Beitrag ist möchte ich den Entwicklern und Schöpfern von FreePascal und der Lazarus-
IDE meinen Respekt und Dank aussprechen. Ich mag die Sprache Pascal und finde das FreePascal/Lazarus Projekt einfach nur Klasse!
Grüße
dietmar
Ich bin Neueinsteiger in der Gui Programmierung.
Ich möchte die Komponente TCalcEdit verwenden. Ich weiss leider nicht wie ich den Pop-Up Calculator
des TCalcEdit Widgets relativ zum Fenster platzieren kann. Ich meine damit nach Kompilierung des
Programms und Ausführung wird die Teilkomponente Calculator immer in der Mitte des Bildschirms
platziert, unabhaengig davon wo mein Anwendungsfenster sich gerade befindet.
Da dies mein erster Beitrag ist möchte ich den Entwicklern und Schöpfern von FreePascal und der Lazarus-
IDE meinen Respekt und Dank aussprechen. Ich mag die Sprache Pascal und finde das FreePascal/Lazarus Projekt einfach nur Klasse!
Grüße
dietmar
Re: TCalcEdit - Calculator
Ich glaube, das ist bei diesem Dialog nicht vorgesehen.
- corpsman
- Lazarusforum e. V.
- Beiträge: 1629
- Registriert: Sa 28. Feb 2009, 08:54
- OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
- CPU-Target: 64Bit
- Wohnort: Stuttgart
- Kontaktdaten:
Re: TCalcEdit - Calculator
Anderseits ist das schreiben eines Taschenrechners quasi eine der 1. Programieraufgaben die man einem Schüler so geben könnte => bevor ich da ewig rumsuche wie das geht würde ich einfach geschwind eine neue Form erstellen und das ding kurz nachprogrammieren *g*.
--
Just try it
Just try it
Re: TCalcEdit - Calculator
schadetheo hat geschrieben:Ich glaube, das ist bei diesem Dialog nicht vorgesehen.

Re: TCalcEdit - Calculator
da sind die Schüler aber heutzutage wesentlich weiter als zu meiner Schulzeit (digital Natives?)corpsman hat geschrieben:Anderseits ist das schreiben eines Taschenrechners quasi eine der 1. Programieraufgaben die man einem Schüler so geben könnte => bevor ich da ewig rumsuche wie das geht würde ich einfach geschwind eine neue Form erstellen und das ding kurz nachprogrammieren *g*.
Prinzipiell ist das natürlich eine gute Idee, wenn man weiß wie das geht, obwohl ich nicht gerne meine Zeit mit Dingen verschwende, die schon
x-male vorher ein anderer gemacht hat.
Kannst du mir vielleicht berichten, wie man ein Form-Template erstellt, das später in andere Formen eingebunden wird? Link wäre schon hilfreich.
Wie schon gesagt, ich habe erst gerade mit Lazarus angefangen und meine Pascal-Kenntnisse sind gering und schon angestaubt.
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2822
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: TCalcEdit - Calculator
Da könnten dir Frames weiterhelfen: http://wiki.freepascal.org/Frames" onclick="window.open(this.href);return false;dietmar hat geschrieben:Kannst du mir vielleicht berichten, wie man ein Form-Template erstellt, das später in andere Formen eingebunden wird? Link wäre schon hilfreich.
hth
Micha
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
-
- Beiträge: 290
- Registriert: Mo 24. Dez 2007, 13:14
- OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux)
- CPU-Target: AMD64X2
Re: TCalcEdit - Calculator
Wenn man Quelltexte wie im Fall von Lazarus hat geht alles.
Du mußt entweder in der Datei "lazarus\lcl\editbtn.pas" die Prozeudur "procedure TCalcEdit.RunDialog;" ändern oder in "lazarus\lcl\extdlgs.pas" die Prozur "function CreateCalculatorForm(AOwner: TComponent; ALayout : TCalculatorLayout; AHelpContext: THelpContext): TCalculatorForm;" ändern.
Du mußt entweder in der Datei "lazarus\lcl\editbtn.pas" die Prozeudur "procedure TCalcEdit.RunDialog;" ändern oder in "lazarus\lcl\extdlgs.pas" die Prozur "function CreateCalculatorForm(AOwner: TComponent; ALayout : TCalculatorLayout; AHelpContext: THelpContext): TCalculatorForm;" ändern.
Re: TCalcEdit - Calculator
Bora4d hat geschrieben:Wenn man Quelltexte wie im Fall von Lazarus hat geht alles.
Du mußt entweder in der Datei "lazarus\lcl\editbtn.pas" die Prozeudur "procedure TCalcEdit.RunDialog;" ändern oder in "lazarus\lcl\extdlgs.pas" die Prozur "function CreateCalculatorForm(AOwner: TComponent; ALayout : TCalculatorLayout; AHelpContext: THelpContext): TCalculatorForm;" ändern.
Ich habe mal testweise die Funktion leicht verändert:
( Left:=100;
Top:=100; )
Dann alles neu kompiliert --> keine Änderung
Nur die LCL-Komponenten neu kompiliert --> keine Änderung
Code: Alles auswählen
function CreateCalculatorForm(AOwner: TComponent; ALayout : TCalculatorLayout; AHelpContext: THelpContext): TCalculatorForm;
begin
Result:=TCalculatorForm.Create(AOwner);
with Result do
try
HelpContext:=AHelpContext;
if Screen.PixelsPerInch <> 96 then
begin { scale to screen res }
SetDefaultFont(Font, ALayout);
// Left:=(Screen.Width div 2) - (Width div 2);
// Top:=(Screen.Height div 2) - (Height div 2);
Left:=100;
Top:=100;
end;
except
Free;
raise;
end;
end;
Das TCalcEdit-Widget soll sich in Bezug auf die Anordnung der Calculator-Komponente, wie das TDateEdit verhalten.
Beim TDateEdit-Widget wird die Calendar-Komponente nach Clicken des Buttons direkt an das TEdit Element platziert.
Kann mir jemand noch Tips geben, wie ich das hinbekommen?