Beim Fenster schließen Abfrage um zu speichern

    Der beste Rat, den man dir geben kann: Lerne die Grndlagen der Delphi-Programmierung

    Lazarusanfang schrieb:

    Vielen Dank dafür, aber könntest du das bitte auch genauer erklären?
    Ich will nämlich nicht einfach den Code sondern verstehen wie das ganze funktioniert


    Ich werd's jetzt mal ohne jeglichen Euphemismus ganz deutlich zum Ausdruck bringen: Dir, werter Lazarus-Anfänger, fehlt es an den allernötigsten Grundlagen der Programmierung mit Delphi. Diesem Mangel kann außer dir keiner abhelfen. Das ist wie mit allem anderen, was man lernen muß, bevor man ein Werkzeug verwenden kann. Ja, es ist sogar ganz genau so wie mit deinen grundsätzlichen Lebensbedürfnissen: Niemand kann dir das Kauen, Verdauen, Kacken, Trinken, atmen abnehmen. Das mußt du selbst tun, auch wenn dieser Gedanke neu für dich zu sein scheint. Doch zurück zum Programmieren-Lernen: Du lernst, indem du anwendest, da du ganz offensichtlich keiner dieser seltenen Menschen bist, die von sich behaupten, sie müßten nur ein gutes Buch über diese oder jene Sache lesen, danach würden sie das ganze Ding beherrschen.

    Als Anfänger arbeitet man Tutorials durch. Ein Tutorial ist eine schriftliche oder filmische Gebrauchsanleitung oder auch einen Schnellkurs für Computerprogramme, in denen die Bedienung und die Funktionen anhand von (teils bebilderten) Beispielen Schritt für Schritt erklärt werden. Entsprechende Tutorials findest du im Internet wie Sand am Meer, gerade auch für Lazarus. Du wirst es mir sicher nachsehen, wenn ich mir nicht die Mühe machen will, diese Tutorials für dich ausfindig zu machen, dafür gibt es schließlich Suchmaschinen: Lazarus+Tutorial oder Lazarus+Anfänger oder Lazarus+Grundlagen wäre eine kleine Auswahl sinnvoller Suchbegriffe. Wie man eine Suchmaschine benutzt, weiß du ja sicher.

    So lange dir diese absolut unabdinglichen Basiskenntnisse fehlen, macht es keinen Sinn, dir Hilfestellungen anzubieten, die letztendlich auch nur das wiederholen, was in den Tutorials steht, und die du offenbar weitgehend nicht verstehst. Wieso um alles in der Welt sollte man die ganzen Tutorial-Texte hier noch einmal reinkopieren? Nur damit du dich nicht anstrengen mußt und selber auf die Suche gehst? Das ist nicht Sinn & Zweck dieses Forums. Alles andere würde letztlich darauf hinauslaufen, daß bereitwillige Helfer dir dein Programm schreiben, ohne dafür bezahlt zu werden, und das auch noch mit weitaus mehr Mühe, als wenn sie's für sich alleine schreiben würden. Vielleicht ist es dir nicht bewußt, aber viele hier leben davon, Programme zu entwickeln.

    Lazarus hat doch eine ganz passable Online-Hilfe. Darin kann man Parameter und was man sonst noch benötigt, um die Sprache kennen- und beherrschen zu lernen, nachschlagen. So habe ich selbst beispielsweise ca. 1994 mit Pascal (TurboPascal für DOS, ebenfalls von Borland) angefangen und mich erst 2009, als ich beruflich zu programmieren begann, hier angemeldet. Und ich muß aufrichtig sagen: Ich habe hier und in anderen Delphi-Foren unerwartet viel gelernt. Das wäre mir aber nicht möglich gewesen, wenn ich ein ungeduldiger Mensch wäre, der schnell und ohne nennenswerte eigene Anstrengung Erfolge sehen will. In diesem Fall hätte ich mir so viel Frust eingehandelt, daß es dazu gereicht hätte, zehnmal aufzugeben. So bin ich dagegen systematisch vorgegangen, weil ich wirklich lernen wollte, wie man dieses Werkzeug handhabt – und es gibt noch immer zahlreiche Leute, die das viel besser können als ich, und die es auch immer besser können werden, weil die ja auch dazulernen und ich die somit niemals einholen könnte. Aber darum geht es ja auch nicht, sondern darum, die Handhabung eines sehr speziellen Werkzeugs zu erlernen, um stabile und marktfähige Programme schreiben zu können.

    Entwickeln ist übrigens ein gutes Stichwort, um einen weiteren wichtigen Aspekt des Programmieren-Lernens anzuführen: Man entwickelt nicht nur Programme, man entwickelt auch sich selbst, indem man das Werkzeug Stück für Stück besser kennenlernt. Man entwickelt nämlich auch Geduld, Konzentrationsfähigkeit, Denkfähigkeit und vor allem logisches Denken im Rahmen eines mehr oder weniger festgefügten logischen Systems. All das erreicht man nicht von heute auf morgen, auch nicht in ein paar Wochen, sondern durch tägliches, kontinuierliches Anwwenden, wie z.B. auch beim Kampfsport oder beim Schach oder oder oder ... Man sollte auch nicht davor zurückschrecken, mal ein gutes Buch über die Delphi-Programmierung zu lesen. Ich hatte damals z.B. Delphi for Kids (da war Delphi 3 pro dabei) und Delphi for Dummies. Sowas findest du mit ein wenig Ausdauer auch noch im Antiquariat.

    Wenn du das alles scheust, weil es dir zu anstrengend ist, dann solltest du dir vielleicht wirklich ein anderes Hobby suchen :saint:
    Ja okay... Ich sehs ein :P // ist an DeddyH gemeint zu deiner Antwort schreibe ich gleich was!
    Aber jetzt hab ich ein sehr Großes Problem ;(
    Wenn ich das Fenster schließe, habe ich ja die Abfrage drinne, ob er ohne Speichern das Fenster schließen will. Wenn ich auf 'Ja' drücke haut es mir einen Fehler raus. Genau so wie bei Nein...
    FehlerCode:

    Projekt project1 hat Exception-Klasse >>External:
    SIGSEGV<< ausgelöst.

    In Datei '.\win32\win32wsbuttons.pp' in Zeile 494
    if ThemeServides.ThemesAvailable and

    Ich verstehe das Problem nicht ganz?
    Das ist erst, seitdem ich die Knöpfe umbennant habe!

    Perlsau schrieb:

    Nur damit du dich nicht anstrengen mußt und selber auf die Suche gehst?


    Naja, nicht wirklich... Ich gebe mir sehr viel Mühe... Ich bin fast den halben Tag am Rechner und suche nach meinen Fehlern / nach Verbesserungen oder sonstige Dinge an meinen Programmen. Dies kann sehr viel Arbeit, aber kann auch sehr wenig Arbeit sein. Ich kann (wenn mein Programm fertig ist) einfach ihnen Privat meine HP schicken, auf dem ich das "Spiel" veröffentlichen werde!

    Perlsau schrieb:

    bereitwillige Helfer dir dein Programm schreiben, ohne dafür bezahlt zu werden, und das auch noch mit weitaus mehr Mühe, als wenn sie's für sich alleine schreiben würden. Vielleicht ist es dir nicht bewußt, aber viele hier leben davon, Programme zu entwickeln.


    Ja, dafür bin ich auch wirklich sehr Dankbar. Nicht jeder Mensch macht sich die Mühe kostenlos, bzw. ohne etwas dafür zu bekommen, zu helfen. Deshalb finde ich es gerade gut mit Leuten in Kontakt bzw. Leute um Hilfe zu fragen, die das Thema besser verstehen. Außerdem lerne ICH von diesen Hilfestellungen. Ich lerne mit ihnen umzugehen und sie Anzuwenden...


    Perlsau schrieb:

    weil ich wirklich lernen wollte, wie man dieses Werkzeug handhabt


    Eben genau das will ich auch! Ich versuche die Programmier-Sprache Lazarus best möglichst zu verstehen um dann auf ein andere, relativ, bessere Programmiersprache überzusteigen. Dafür brauche ich aber VIEL Zeit, Geduld und Verständnis. Die Tutorials bringen nicht immer etwas. Ich verstehe ja die meisten Grundlagen, welche ich zur Zeit auch in der Schule lerne. Ich bin meiner Klasse einen riesen Sprung voraus! Mein Lehrer meinte, dass das er nicht mehr die Fehler meiner Programme findet, da es ein sehr umfangreiches Programm ist und natürlich auch recht schwere Vokabeln dabei sind, welche ich natürlich mir durch Hilfe von diesem Forum angeeignet habe und diese nun anwenden kann.

    Perlsau schrieb:

    macht es keinen Sinn, dir Hilfestellungen anzubieten, die letztendlich auch nur das wiederholen, was in den Tutorials steht, und die du offenbar weitgehend nicht verstehst.


    Wieso sollte es keinen Sinn machen? Es macht immer Sinn Leuten etwas zu erklären oder? :D
    Kinder fragen auch Dinge aus der Schule, die sie vielleicht nicht verstanden haben? Wenn sie Kinder haben, die schon in der Schule sind, werden sie wohl schon Erfahrung gemacht haben mit diesem Thema! z.B. gibt es ja Leute, die Nachhilfe brauchen, weil sie etwas nicht verstehen und dann brauchen sie einen Weg, trotzdem etwas zu verstehen ... Damit will ich jetzt nicht sagen, dass ich zu dumm bin um zu programmieren, sondern einfach nur nicht perfekt! Jeder hat mal klein Angefangen und musste sich hocharbeiten. Jeder hat dabei seine eigenen Methoden. Ich lerne halt gerne von anderen, weil man da am besten drauf reagieren kann.

    Naja ich hoffe sie haben verstanden, was ich damit sagen will.
    Werde meinen Account an dieser Stelle einfach Inaktiv machen und die Tutorials durchschauen.
    Also ... Man sieht sich und Vielen Dank für die Hilfe meiner Probleme.
    Gruß Lazarusanfang

    Perlsau schrieb:

    Du lernst, indem du anwendest, da du ganz offensichtlich keiner dieser seltenen Menschen bist, die von sich behaupten, sie müßten nur ein gutes Buch über diese oder jene Sache lesen, danach würden sie das ganze Ding beherrschen.


    Dazu möchte ich aber doch noch etwas sagen...
    Ich habe mir ein Delphi-Buch gekauft, was aber nicht zum lernen, sondern dass die Befehle wiedergibt. Leider ist dieses Buch für Anfänger nicht sehr geeignet und habe mir deshalb schon ein neues Buch bestellt. Dieses wird in den nexten Tagen kommen und ich werde es wohl verschlingen ...
    Denn wie ich schon erwähnt habe, möchte ich programmieren lernen! Egal ob jetzt mit einem Buch, Tutorial oder per Forums...
    Ich will einfach programmieren lernen koste es, was es wolle!

    RIP. Lazarusanfang
    Es geht nicht darum, daß du dich hier angemeldet hast, das steht jedem frei: Es liegt mir daher nichts ferner, als dich zu vergraulen oder dazu zu manipulieren, deinen Account hier aufzugeben. Nein, es geht um die Vorgehensweise: Wenn du mit einem Werkzeug, sagen wir mal einer alten, mechanischen Drehmaschine ohne CAD-Steuerung, die nicht ganz so komplex ist wie das Werkzeug Lazarus, z.B. ein paßgenaues Metallstück fräsen willst, wirst du kläglich scheitern, wenn du gleich damit beginnst, das Ding einzuspannen und loszufräsen. Dir fehlen in diesem Fall Kenntnisse über das richtige Span-Werkzeug, über das Material und über die generelle Vorgehensweise, zusätzlich mathematische Kenntnisse usw. Deshalb lernen angehende Dreher das Handwerk von der Pike auf, beginnen also erstmal mit Theorie, einem Schraubstock und diversen Feilen usw. Ganz genau so ist das auch bei anderen Berufen und Fertigkeiten (sogar der Malermeister hat mal so angefangen, ebenso der Schornsteinfeger, der KFZ-Mechaniker, der Heizungsinstallateur usw.), ebenso beim Programmieren: Am Anfang macht man leichte, einfache Übungsprogramme und nicht gleich ein anspruchsvolles Spiel, an dem gewiefte Programmierer machmal jahrelang sitzen oder monatelang 20 oder 30 Programmierer gleichzeitig daran arbeiten. Das wäre so, als ob du immer drei, vier oder fünf Treppenstufen auf einmal nehmen willst und dich dann wunderst, wenn du auf der Schnauze liegst. Im Ernst, du überforderst dich damit und kommst erstmal kaum weiter. Am Ende fängst du ein anderes Projekt an und landest wieder an dieser Hürde. Ich weiß aus eigener Erahrung, wovon ich hier schreibe.

    Deshalb gibt es Tutorials, um einen angehenden Programmierer Schritt für Schritt in die "Geheimnisse" der Programmierung einzuführen. Wenn ich damals gleich mit Delphi losgelegt hätte, ohne die paar Jahre Übung zuvor mit Pascal, ich wäre wohl niemals so weit gekommen, heute Datenbank-Anwendungen zu entwickeln. Außerdem haben wir, also die User, die schon etwas länger dabei sind, das schon hundert Mal erlebt (und das ist vermutlich noch stark untertrieben), daß Leute ohne Grundkenntnisse hier nachfragen, wie man denn dieses oder jenes anspruchsvolle Spiel programmiert, meist ohne zuvor auch nur eine einzige Zeile Quellcode selbst geschrieben zu haben, vom Verstehen kopierter Sourcen ganz zu schweigen. Das ist der Eindruck, den du hier auf mich machst, und deshalb schrieb ich diesen etwas längeren Text, um dir von dieser Beobachtung zu berichten. Bei dir fängt es schon damit an, daß du nicht einmal deine Entwicklungsumgebung kennst, dir die grundlegenden Programmierkonzepte der Programmiersprache Pascal völlig fremd zu sein scheinen und du Hinweise und Empfehlungen nicht beachtest. Durch deine geringen bis nicht vorhandenen Kenntnisse der minimalsten Basics fällt es dir sogar schwer, dich richtig auszudrücken, will heißen: Begriffe zu verwenden, die wir alle hier verstehen. Wenn du deine eigenen Begrifflichkeiten verwendest, weiß kein Mensch, was du eigentlich sagen willst:

    "Ich muss halt das per Command hinzufügen."
    Was für einen "Command"? Verstehe ich nicht.

    "Und wie schreibe ich denn so einen MessageDialog?... Mit einer Function?"
    Man schreibt keinen Messagedialog, sondern ruft ihn auf. Das könntest du selbst aus der Hilfe entnehmen. Tust du aber nicht.

    "Ähm, die Texte sind aber leider auf Englisch.. ich würde die gern auf Deutsch haben, also werd ich die Message selbst erstellen müssen...? "
    Daraufhin gibt dir DeddyH einen Link, der dieses Problem löst. Du kannst aber nichts damit anfangen:

    "Vielen Dank dafür, aber könntest du das bitte auch genauer erklären?"
    Minimale Englisch-Kenntnisse sind ebenfalls eine wichtige Voraussetzung zum Programmieren mit Lazarus.

    Es genügt nicht, sich viel Mühe zu geben, man sollte auch "richtig" vorgehen. Mühevoll muß das nicht sein, im Gegenteil, es soll Spaß machen, man benötigt echtes Interesse im Sinne einer echten, lebendigen Beziehung zu dem, was man tut. Wenn du falsch anfängst, ist jede Mühe vergeblich, weil sie in Sackgassen führt. Daher, wie gesagt, die Emfehlung, doch erst ein paar einfachere Projekte umzusetzen und dabei solche Sachen wie den Umgang mit einem Message-Dialog oder mit den Ereignissen eines Formulars zu erlernen. Was passiert beim OnCreate? wird OnShow vor OnActivate aufgerufen? Was bedeutet OnCloseQuery usw. Wenn du solche grundlegenden Dinge nicht weißt, kommst du einfach nicht weiter, weil du das wissen mußt, um ein funktionsfähiges Programm zu entwickeln. Tutorials beinhalten meist einfache Beispielprogramme, anhand derer gezeigt wird, wie dies und das anzuwenden und zu lösen ist. Du lehnst das jedoch ab und fragst lieber hier wegen jeder Kleinigkeit nach, die du auch einem Anfänger-Tutorial entnehmen könntest.

    Aber was soll's, du mußt selber wissen, was du tust. Wenn das dein Weg ist, ist das auch deine Suppe, die du da auslöffeln mußt. Ich klinke mich jetzt hier aus und wünsche dir trotz allem viel Erfolg.
    Wollen wir jetzt darüber Diskutieren, wer nun was gelernt hat oder welches Buch gelesen und trotzdem nix verstanden?

    @Lazarusanfang

    Wenn zwischen der Antwort auf eine Frage inkl. Erklärung und Quellcode und deiner erneuten Frage dazu, nicht mal 30 Min. liegen, dann kann ich mir nicht vorstellen, dass man sich mit der Antwort wirklich beschäftigt hat.

    Wenn man etwas nicht versteht, dann probiert man aus... am einfachsten, in dem man ein eigenständiges Projekt anlegt, das fast nix anderes macht, das das zu "testen", was man erreichen will. Wenn man da dann Probleme hat, kann man nachfragen.

    Es macht wenig sinn, Jemandem helfen zu wollen, der im Objektmanager noch nicht mal die Ereignisse selbstständig findet.

    [quotte]
    ...
    r-Sprache Lazarus best möglichst zu verstehen um dann auf ein andere, relativ, bessere Programmiersprache überzusteigen.
    [/quote]

    Ah! Du willst also garnicht "Delphi" lernen, sondern lieber eine "bessere" Programmiersprache? Ist es dir deswegen den Aufwand nicht wert, dich mit dem was du da verwendest zu beschäftigen? Sorry... hast du überhaupt eine Ahnung, was Delphi ist? Hast du eine Ahnung, was da draussen an kompetenten vielgenutzen Programmen in Delphi rumschwirrt, was nur keiner weiss?

    Wenn du also eine Programmiersprache "lernen" willst, dann benutze bitte gleich einer dieser "besseren", denn wenn diese "besser" sind, warum willst du dann überhaupt mit sowas "schäbigem" wie Delphi beschäftigen, das offensichtlich nicht deinen Ansprüchen genügt und wohl zu doof ist, deine Syntax zu verstehen und deine Fehler selbständig zu korrigieren.

    Grundlagen sind der Weg zum Wissen! Dafür, dass du Bücher kaufst, die deine grundlagen übersteigen ist ebenfalls nicht das Forum zuständig, sondern eher die Selbstüberschätzung, der Mangel an Grundlagen und wohl auch der Gedanke im Hinterkopf: "Ich will ja nicht zuviel damit machen, da ich eh umsteigen werde..."

    DL
    Es gibt Wissenschaftler, die behaupten, dass Logik "universell", also überall gleich, sei...
    Ich treffe täglich Menschen, die mit "ihrer" Logik das Gegenteil beweisen.