| Autor |
Beitrag |
Zürrer
      
Beiträge: 27
WIN 7 Prof
Delphi 2
|
Verfasst: Mo 14.02.05 12:59
Hi,
ich versuche ein altes Kartenspiel, das in Turbo Pascal programmiert ist, in die Delphi-Sprache zu übersetzen. Dabei bin ich auf unüberwindbare Schwierigkeiten gestossen, wenn in einer längeren procedure mit der Funktion Readkey eine Eingabe am Bildschirm verlangt wird. Ich möchte dies mit BitBtn-Komponenten erledigen.
Kann mir jemand helfen? Ich bitte um Entschuldigung für die vielleicht etwas dilettantische Frage.
Vielen Dank im voraus.
Egon
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Mo 14.02.05 13:13
Hallo und  im Delphi-Forum.de!
| Zürrer hat folgendes geschrieben: | | wenn in einer längeren procedure mit der Funktion Readkey eine Eingabe am Bildschirm verlangt wird. Ich möchte dies mit BitBtn-Komponenten erledigen. |
Wie willst du das denn mit der TBitBtn Komponenten erledigen? Eine ReadKey Funktion und die visuelle Button Komponente erledigen doch nicht im geringsten die gleiche Aufgabe.
Gruß
Tino
|
|
Zürrer 
      
Beiträge: 27
WIN 7 Prof
Delphi 2
|
Verfasst: Mo 14.02.05 14:01
Hallo Tino,
Danke für die Mitteilung.
Mit Readkey wird z. B. ein Karten-Lizit eingelesen (z.B. '1K'=1Karo). Das Gleiche möchte ich durch Click auf einen entsprechenden BitBtn erreichen. Mein Problem besteht darin, dass ich während des Ablaufs einer procedure gar nicht auf das Window mit den BitBtn komme.
Gruss Egon
|
|
MitschL
      
Beiträge: 211
Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
|
Verfasst: Mo 14.02.05 15:28
Ähm,
vielleicht solltest du gar nicht von dem Ur-Projekt ausgehen - und für deine Erläuterungen mal so tun, als wüßten wir nicht worum es geht.
Geh ich vielleicht recht in der Annahme, daß so ein Button eine karte darstellen soll?
gegrüßt!
_________________ "Bloßes Ignorieren ist noch keine Toleranz." (Theodor Fontane)
|
|
Harry M.
      
Beiträge: 754
Win 2000, XP
D2005
|
Verfasst: Mo 14.02.05 15:42
ich habe auch schon in vergangener zeit versucht, im alten pascal dialekt zuschreiben unter delphi, aber da gehen irgend wie nicht alle schlüsslwörter mußte ich feststellen so konnte ich zb, wenn ich mich recht errinnere, nicht auf die farben usw zugreifen. wenn ich es mit tp compiliert habe gings aber mit delphi nicht. habe ich da nur was falsch gemacht oder ist pascal gar nicht so kompatibel zu delphi wie allgemein hin angenommen?
|
|
freak4fun
      
Beiträge: 604
Erhaltene Danke: 4
Win 7 Pro
VS 2013 Express, Delphi, C#, PHP, Java
|
Verfasst: Mo 14.02.05 15:50
Titel: VCL oder non VCL
Was heißt denn Delphi?
Man kann unter Delphi (Hab die 7 Enterprise) unter "Datei -> Neu -> Andere -> Konsolenanwendung" eine Konsolenanwendung erstellen. Da funktioniert Pascal. Aber das ist ja nix neues dann. Wenn ihr die Sache mit der VCL Lösen wollt müsst ihr umstellen.
MfG
fR34k
|
|
Harry M.
      
Beiträge: 754
Win 2000, XP
D2005
|
Verfasst: Mo 14.02.05 15:58
nalogo. soweit war ich auch schon neu -> consolenanwednung. aber da funzt nicht die ganze pascal syntax meiner auffassung nach. aber ich lasse mich gern belehren..
|
|
Zürrer 
      
Beiträge: 27
WIN 7 Prof
Delphi 2
|
Verfasst: Mo 14.02.05 16:14
Hallo Delphi-Freunde,
zur Klarstellung: Mein Turbo-Pascal-Programm (ist mindestens 10 Jahre alt) läuft bestens unter DOS. Ich wollte aber ein echtes Delphi-Programm daraus machen.
Grüsse
Egon
|
|
tommie-lie
      
Beiträge: 4373
Ubuntu 7.10 "Gutsy Gibbon"
|
Verfasst: Mo 14.02.05 16:15
| User-Xy2004 hat folgendes geschrieben: | | aber ich lasse mich gern belehren.. |
Dann lass dich mal eines besseren belehren. Die Syntax ist noch vollständig da, auch Klassen kann man weiterhin verwenden. Du kannst auch aus einer Konsolenanwendung heraus Fenster erzeugen, wenn du Lust hast, aber dann würde ich mich fragen, warum es 'ne Konsolenanwendung werden soll
Ich kenne die Funktionen der Pascal-Standardbibliotheken nicht, aber falls es die noch irgendwo in den Delphi-Units gibt, muss man diese nunmal auch einbinden.
_________________ Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
|
|
Harry M.
      
Beiträge: 754
Win 2000, XP
D2005
|
Verfasst: Mo 14.02.05 16:24
für mich war es damals nur reine spielerei. ich nutze natürlich ausschließlich delphi. wenn ich code verwendet habe der mit pascal compilierbar war, habe ich den nach delphi 1:1 übertragen mit allem drum und dran. ging aber irgndwie nicht. villeicht sollte ich mich nochmal damit beschäftigen. vieleicht war ich damals nur zublöd.
|
|
Harry M.
      
Beiträge: 754
Win 2000, XP
D2005
|
Verfasst: Sa 19.02.05 14:57
so... ich habe das jetzt nochmal getest. ich kann mit tp folgenden code problemlos compilieren
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| uses crt, dos;
var stunde, minute, sekunde, sekunde100 : word; zeit : string; Label START; begin START:
GetTime(stunde, minute, sekunde, sekunde100); textcolor(10); gotoxy(1,1); writeln('Zeit: '); gotoxy(7,1); writeln(stunde); gotoxy(9,1); writeln(':');
gotoxy(10,1); writeln(minute); gotoxy(12,1); writeln(':'); gotoxy(13,1); writeln(sekunde);
goto START;
readln; end. |
wenn ich das in mein delphi nehme geht es nicht. warum wenn doch die pascal synatx in delphi auch geht???
Moderiert von raziel: Code- durch Delphi-Tags ersetzt.
|
|
tommie-lie
      
Beiträge: 4373
Ubuntu 7.10 "Gutsy Gibbon"
|
Verfasst: Sa 19.02.05 15:17
Vermutlich weil die Units crt.pas und dos.pas nicht mehr vorhanden sind und die Funktionen gotxy() und GetTime() unbekannt sind.
_________________ Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
|
|
Zürrer 
      
Beiträge: 27
WIN 7 Prof
Delphi 2
|
Verfasst: So 20.02.05 10:40
Um eine Eingabe vom user zu erhalten, kenne ich nur 'MessageDlg' und 'InputBox'. Gibt es auch eine procedure oder function, um eine neue routine auszulösen, z.B. einen BitBtn zu manipulieren und in eine StringGrid-Cell etwas zu schreiben?
Gruss Egon
|
|
freak4fun
      
Beiträge: 604
Erhaltene Danke: 4
Win 7 Pro
VS 2013 Express, Delphi, C#, PHP, Java
|
Verfasst: Mi 13.04.05 08:39
Eingaben würde ich über ein EditFeld erwarten.
MfG
freak
|
|
Popov
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Mi 13.04.05 12:44
Hallo Zürrer,
versuche nichts was nichts wert ist. Die DOS Zeit ist vorbei und versuche nicht aus einem DOS Programm unter DOS ein DOS Programm unter Windows zu machen.
Die klassischen DOS Programme funktionieren so, daß man sich selbst um alles kümmern muß. Man startet das Programm irgendwo oben und er rattert nach unten durch. Gelegentlich wird es umgeleitet, aber dem Sinn nach bleibt es so. Dazu gehört auch Readkey. Es stoppt das Programm und wartet auf eine Taste. Dann reagiert es. Dieses Readkey brauchst du unter Delphi nicht, da es ereignisorientiert ist. Das Programm rattert nicht mehr durch und bleibt gelegentlich stehen, sondern steht und wartet auf ein Ereignis, z.B. Buttonklick. Was intern passiert ist erst mal egal, aber für dich steht das Programm. Du mußt Karten ausgeben? Dann drücke einen Button. Das Programm macht es und bleibt stehen. Es ist kein Readkey nötig, denn das Programm bleibt selbst stehen. Du willst eine Karte ziehen, dann drücke einen Button und führe eine Prozedur aus.
Mach es also gleich richtig und versuch nicht ein DOS Programm mit Delphi zu schreiben.
_________________ Popov
|
|