![]() |
Re: Ein Programm ohne Units schreiben
@igel: :shock:
application.run ist eine Endlosschleife. Es wird erst in die nächste Zeile gesprungen wenn der User das Programm beendet hat! Form zur Laufzeit anzeigen geht so:
Delphi-Quellcode:
program Project1;
uses Forms; type TFenster = class(TForm) {private public} //brauchst du garnicht. end; var Fenster : TFenster; procedure Button1Click(sender:TObject); begin application.terminate; end; {$R *.res} //wenn du diese Zeile entfernst, verliert das Programm sein Icon. begin Application.Initialize; Application.CreateForm(tfenster, fenster); fenster.caption := 'Hallo'; application.title:='Mein erstes Programm mit Fenster' with tbutton.create(fenster) do begin parent := fenster; width := 100; caption := 'Klickmich!'; onclick := Button1Click; end; Application.Run; end. |
Re: Ein Programm ohne Units schreiben
hallo ichbins,
wenn ich deine variante compilieren will, dann kommt bei mir eine fehler meldung. das hatte ich nämlich auch schon mal getestet. und bei mir kam genau die gleiche fehler meldung. so und hier jetzt die fehler meldung: Exception EResNotFound in Modul Projekt1.exe bei 00043A94. Ressource TFenster wurde nicht gefunden. |
Re: Ein Programm ohne Units schreiben
@ichbins :?
Zitat:
Zitat:
Delphi-Quellcode:
@christian18
.
. . fenster.caption := 'Hallo'; with tbutton.create(fenster) do begin parent := fenster; width := 100; caption := 'Klickmich!'; onclick := Button1Click; end; application.run; . . . Delphi schreibt normalerweise automatisch in die Resourcen-Datei Resourcen für die Fenster. Da du die aber nicht erstellt hast musst du das {*.res} da wohl weg lassen |
Re: Ein Programm ohne Units schreiben
hallo igel,
ich habe das jetzt auch schon weggelassen und der gleiche fehler kommt immernoch. |
Re: Ein Programm ohne Units schreiben
Liste der Anhänge anzeigen (Anzahl: 1)
Bei mir kommen da jede Menge Fehlermeldungen.
für den Button brauche ich
Delphi-Quellcode:
Resnotfound heisst dass er irgendeine Ressourcendatei nicht gefunden hat. Damit meint er wahrscheinlich die dfm-Datei...
stdctrls;
gut gemeinter Rat: vergisses Du kannst dein Fenster ganz ohne die Forms.pas erzeugen. Das geht dann über nonVCL. da schreibst du dir dann praktisch alle Teile der forms selber. Du hast auch keine application-variable etc... Dafür ist die Datei (mit D7) nur 14 KB groß. Im Anhang mein erster/(noch) einziger nonVCL-Versuch. Das Programm kann seine Größe ausgeben und wenn ich auf das Form klicke, verschwindet der Text (eigentlich hätte was ganz anderes passieren sollen :oops:) @igel: sry... :oops: ich hab deinen Code nur überflogen und dabei ein paar wichtige Dinge übersehen :oops: |
Re: Ein Programm ohne Units schreiben
Also wenn das alles nichts hilft, ein letzter Versuch von mir:
Delphi-Quellcode:
Delphi Denkt wenn du application.createform verwendest das du eine *.dfm Datei hättest.
.
. . begin application.initialize; fenster := TFenster.Create(application); fenster.show; . . . application.run; end; @ichbins entschuldigung akzeptiert :-D |
Re: Ein Programm ohne Units schreiben
aber es muß doch auch eine andere möglichkeit geben. gibt es in allen andern programmiersprachen auch. man hat mir das ja auch als aufgabe gegeben. also muss es funktionieren. nonVCL hatte ich auch schon gedacht als ich die aufgabe bekam. dann habe ich die person angesprochen von der ich die aufbabe habe und dann sagte er das es auch anders funktioniert. er meinte ich soll eine Objektvariable aus anlegen und die dann aus der klasse TForm füllen. und das habe ich jetzt auch schon gemacht. und jetzt komme ich nicht weiter. naja wenn nochjemand was weiß, dann bitte ich um hilfe. vielen danke schon einmal im vorraus.
MFG Christian18 |
Re: Ein Programm ohne Units schreiben
Du benötigst eigentlich nur die Windows-API, um Fenster zu erzeugen. In den Zeiten *vor* Delphi war das die einzige Möglichkeit, Windows-Applikationen zu entwickeln. Na, fast jedenfalls. Man bricht sich tierisch einen ab, aber es geht.
Ganz *ohne* Units geht es aber nicht, denn die Windows-API ist auch eine Unit, nur in Form einer DLL. Ohne fremde Hilfe (sprich: Units) kannst Du in Delphi und den meisten Programmiersprachen gar nichts anstellen, ausgenommen, im Stillen vor sich hinrechnen, da die Ein- und Ausgaberoutinen auch in einer Unit enthalten sind... Du kannst Deinem Lehrer also spitzfindig erklären, das die Sprache 'Delphi' keine Sprachkonstrukte zum erzeugen von Fenstern beinhaltet, weswegen die Aufgabe per se nicht lösbar ist. |
Re: Ein Programm ohne Units schreiben
Zitat:
Soll das heißen 'ohne eigene Units', oder 'gänzlich ohne Units' (letzteres geht nicht, da der Delphi-Compiler ohne System.pas und SysInit.pas nicht arbeiten kann). |
Re: Ein Programm ohne Units schreiben
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz