Fragen zur Programmierung mit Lazarus

Für Fragen von Einsteigern und Programmieranfängern...

Fragen zur Programmierung mit Lazarus

Beitragvon BernhardDEL » 31. Jan 2017, 18:17 Fragen zur Programmierung mit Lazarus

Hallo zusammen.

Als Neuling hier möchte ich ein paar Fragen loswerden.
Zu meiner Person ganz kurz - ich habe vor 30 Jahren unter Turbo Pascal programmiert und vor 10 Jahren mal in Delphi reingeschaut.
Nun möchte ich mit Lazarus ein kleines Programm schreiben, welches mir bei meiner Arbeit als Kraftfahrer hilfreich sein soll.

Aber schon beim Arbeiten mit dem Designer stoße ich an meine Grenzen, zumal ich nicht so gut englisch kann, um die Hinweise richtig deuten zu können. :(
Daher meine Frage, ob es im Handel ein Buch in deutsch gibt, dass als Nachschlagewerk oder Lehrbuch zu Lazarus genutzt werden kann. :shock:

Einige Sachen habe ich schon fertig. So soll ein Formular (TForm) als Statusleiste am oberen Bildschirmrand zentriert erscheinen, die bezüglich Größe und Position nicht verändert werden darf. Lediglich ein Minimieren in die Taskleiste soll erlaubt sein. Alls gut, bis auf das Verschieben und die Position bei Programmstart. Ganz gleich, was ich in den Eigenschaften des Objektinspektors einstelle, das Formular erscheint immer irgendwo, aber nie oben und auch nicht zentriert. :?:

Was mir auch aufgefallen ist, die einzelnen Ausgabefelder ((TLabeledEdit und TLabel) verändern ihre Größe und Position beim vergrößern oder verkleinern des Formular, sodass die angezeigten Daten nicht mehr lesbar sind. :cry:

Wenn es gewünscht wird poste ich gerne den Quelltext.

Es wäre nett, wenn ich von Euch Hilfe bekommen würde, auch wenn meine Fragen Euch ein mitleidiges Lächeln ins Gesicht zaubert :D

Gruß von Bernhard
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon Mathias » 31. Jan 2017, 18:27 Re: Fragen zur Programmierung mit Lazarus

Aber schon beim Arbeiten mit dem Designer stoße ich an meine Grenzen, zumal ich nicht so gut englisch kann,

Dies kann man auf deutsch umstellen Tools/Options/General/Language . Die IDE muss dazu neu gestartet werden.

Daher meine Frage, ob es im Handel ein Buch in deutsch gibt, dass als Nachschlagewerk oder Lehrbuch zu Lazarus genutzt werden kann.

Deine Delphi-Kenntnisse sollte für den Anfang reichen.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3251
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon BernhardDEL » 31. Jan 2017, 18:43 Re: Fragen zur Programmierung mit Lazarus

Danke Mathias,

die Einstellung wurde schon vorgenommen. Leider erscheint aber der Erklärungstext unter dem Objektinspektor nach wie vor in englisch. Das betrifft auch die Nachrichten beim Compilieren.

Für Delphi 5 habe ich ein Buch von Elmar Warken (Addison-Wesley). Auch die Software hatte ich mal, weis Gott wo die abgeblieben ist.

Was ich auch noch nicht verstanden habe - wie bekomme ich zur Laufzeit ein neues Child-Formular in ein Parent-Formular ? Kann ich es im Vorfeld entwerfen und mit Form.create ansprechen ?

Sorry, wenn sich das ein wenig dümmlich anhört.

Bernhard
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon theo » 31. Jan 2017, 19:45 Re: Fragen zur Programmierung mit Lazarus

BernhardDEL hat geschrieben:Das betrifft auch die Nachrichten beim Compilieren.


Die Compilermeldungen kann man auf deutsch haben, indem man bei
Werkzeuge . Einstellungen - Umgebung - Dateien bei "Compilermeldungen Sprachdatei" die Datei "errordu.msg" auswählt.
Diese ist unter dem FPC Ordner, je nach System/Version z.B. bei ...../lib/fpc/3.1.1/msg/errordu.msg
theo
 
Beiträge: 7886
Registriert: 11. Sep 2006, 18:01

Beitragvon af0815 » 31. Jan 2017, 20:27 Re: Fragen zur Programmierung mit Lazarus

Bücher: Siehe hier http://lazarus.intern.es/lazarus_literatur.html da sind einige Aufgeführt.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3266
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: Win7/Linux (L stable FPC stable) per fpcup | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon tightTannic » 31. Jan 2017, 20:31 Re: Fragen zur Programmierung mit Lazarus

n'Abend

[...] das Formular erscheint immer irgendwo, aber nie oben und auch nicht zentriert.

Wenn das Formular beim Programmstart auf eine bestimmte Position geschoben werden soll, mach ich das immer in TForm1.FormCreate(Sender:TObject)...
in etwa so :

Code: Alles auswählen
procedure TForm1.FormCreate(Sender: TObject);
begin
  Form1.Left:=trunc((Screen.Width*0.5)-(Form1.Width*0.5)); // Zentriert das Formular horizontal, wenn man von der Bildschirmbreite Screen.Width ausgeht
  Form1.Top:=0; // Sollte eig. das Formular an den oberen Bildschirmrand verschieben
end;


[...] Statusleiste [...], die bezüglich Größe nicht verändert werden darf.

Das könnte man im Objektinspektor einstellen unter
Form1 > BorderStyle (standardmäßig auf "bsSizeable")
... eingestellt auf "bsDialog" sollte das Formular manuell weder größer noch kleiner gezogen werden können.


Einstellungen mit denen sich das Formular nicht verschieben lässt weiß ich nicht,
allerdings würde ich "prüfen ob sich Form1 verschoben hat, wenn ja es wieder zurückschieben"...
also den Code aus dem FormCreate wieder ausführen... was im Endeffekt auf das selbe hinausläuft.


mfG
Zuletzt geändert von tightTannic am 31. Jan 2017, 20:53, insgesamt 3-mal geändert.
tightTannic
 
Beiträge: 20
Registriert: 31. Jan 2017, 19:46
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon mischi » 31. Jan 2017, 20:48 Re: Fragen zur Programmierung mit Lazarus

theo hat geschrieben:Die Compilermeldungen kann man auf deutsch haben, indem man bei
Werkzeuge . Einstellungen - Umgebung - Dateien bei "Compilermeldungen Sprachdatei" die Datei "errordu.msg" auswählt.
Diese ist unter dem FPC Ordner, je nach System/Version z.B. bei ...../lib/fpc/3.1.1/msg/errordu.msg

Apropos deutsche Fehlermeldungen:
1) Da ich mich um die Übersetzung der Fehlermeldungen kümmere, freut es mich besonders, dass sie auch tatsächlich genutzt wird.
2) Wer Fehler oder Unstimmigkeiten findet oder eine Idee für Verbesserungen hat, ruhig einen Bugreport im bugtracker für FreePascal aufmachen. Ich werde mir das anschauen und sehen, was sich machen lässt. Ziemlich sicher nicht am gleichen Tag, aber im Bugtracker geht nichts verloren und irgendwann sind wieder so viele neue Meldungen zusammen gekommen, dass es sich lohnt.

Grüße - MiSchi.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 153
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: Mac OS X 10.10, 1.2.4, 2.6.4 | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon Mathias » 31. Jan 2017, 22:20 Re: Fragen zur Programmierung mit Lazarus

Code: Alles auswählen
Form1.Left:=trunc((Screen.Width*0.5)-(Form1.Width*0.5));

Wieso so kompliziert ?

Code: Alles auswählen
Form1.Left:=(Screen.Width - Form1.Width) div 2;

Wen man es auch vertikal zentriert habe will, noch einfacher
Code: Alles auswählen
Position := poScreenCenter;   
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3251
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon BernhardDEL » 1. Feb 2017, 14:06 Re: Fragen zur Programmierung mit Lazarus

theo hat geschrieben:
BernhardDEL hat geschrieben:Das betrifft auch die Nachrichten beim Compilieren.


Die Compilermeldungen kann man auf deutsch haben, indem man bei
Werkzeuge . Einstellungen - Umgebung - Dateien bei "Compilermeldungen Sprachdatei" die Datei "errordu.msg" auswählt.
Diese ist unter dem FPC Ordner, je nach System/Version z.B. bei ...../lib/fpc/3.1.1/msg/errordu.msg


Hab ich eingestellt, aber die Compilermeldungen kommen nach wie vor nur auf englisch :(
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon BernhardDEL » 1. Feb 2017, 14:09 Re: Fragen zur Programmierung mit Lazarus

af0815 hat geschrieben:Bücher: Siehe hier http://lazarus.intern.es/lazarus_literatur.html da sind einige Aufgeführt.



Danke. Habe mir gleich ein Buch bestellt, damit ich Euch nicht all zu sehr nerven muss :wink:
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon BernhardDEL » 1. Feb 2017, 14:13 Re: Fragen zur Programmierung mit Lazarus

Mathias hat geschrieben:
Code: Alles auswählen
Form1.Left:=trunc((Screen.Width*0.5)-(Form1.Width*0.5));

Wieso so kompliziert ?

Code: Alles auswählen
Form1.Left:=(Screen.Width - Form1.Width) div 2;

Wen man es auch vertikal zentriert habe will, noch einfacher
Code: Alles auswählen
Position := poScreenCenter;   


Auch hier vielen Dank.
Habe mir in die Form einen zweiten Timer gesetzt und diesen auf 250 ms gestellt. Der überprüft nun die Position und sollte sie sich verändert haben, dann wird das Formular wieder an die ursprüngliche Position gesetzt. Fühlt sich zwar nach Holzhammermethode an, aber erfüllt seinen Zweck. :D
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon af0815 » 1. Feb 2017, 14:52 Re: Fragen zur Programmierung mit Lazarus

Vielleicht noch ein Hinweis, bei Lazarus sind sehr viele Beispiele dabei. Man findet sie in der Lazarus IDE unter Werkzeuge -> Beispielprojekte. Ausserdem kann man viele Anfängersachen von Delphi verwenden, auch die Grundlagen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3266
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: Win7/Linux (L stable FPC stable) per fpcup | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon BernhardDEL » 1. Feb 2017, 17:14 Re: Fragen zur Programmierung mit Lazarus

af0815 hat geschrieben:Vielleicht noch ein Hinweis, bei Lazarus sind sehr viele Beispiele dabei. Man findet sie in der Lazarus IDE unter Werkzeuge -> Beispielprojekte. Ausserdem kann man viele Anfängersachen von Delphi verwenden, auch die Grundlagen.

Danke für den Hinweis. Werde es mir mal anschauen.
Ja, das Delphi-Buch, was ich habe, hilft mir schon, jedoch ist das Delphi 5 und da habe ich schon einige Sachen gefunden, die anders sind.

Trotzdem - Ihr seid toll. Allen ein ernstgemeintes Dankeschön.

Bernhard
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

Beitragvon af0815 » 1. Feb 2017, 17:24 Re: Fragen zur Programmierung mit Lazarus

Schau dir mal der Unterschied zwischen Mode Delphi {$mode delphi} und objfpc {$mode objfpc}. Ob da vielleicht deine beobachteten Unterschiede herkommen.

Siehe http://www.freepascal.org/docs-html/3.0.0/user/userse33.html
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3266
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: Win7/Linux (L stable FPC stable) per fpcup | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon BernhardDEL » 1. Feb 2017, 19:13 Re: Fragen zur Programmierung mit Lazarus

af0815 hat geschrieben:Schau dir mal der Unterschied zwischen Mode Delphi {$mode delphi} und objfpc {$mode objfpc}. Ob da vielleicht deine beobachteten Unterschiede herkommen.

Siehe http://www.freepascal.org/docs-html/3.0.0/user/userse33.html

Aaaahhhh - alles in englisch :cry: Ich sollte doch nochmal zur Schule gehen :shock:

Trotzdem Danke :wink: - und .... ich warte aufs Buch 8)

Bernhard
BernhardDEL
 
Beiträge: 36
Registriert: 31. Jan 2017, 17:18

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Einsteigerfragen



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried