Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Brauche Hilfe bei "Schiffe versenken" (https://www.delphipraxis.net/167713-brauche-hilfe-bei-schiffe-versenken.html)

songoku123 14. Apr 2012 16:44

Delphi-Version: 7

Brauche Hilfe bei "Schiffe versenken"
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo erstmals,
ich bin noch ein Delphianfänger und neu in diesem Forum. Gerade programmiere ich das Spiel "Schiffe versenken". Ich habe mich ein wenig an einer Version aus dem Internet orientiert.:oops:
Doch bei meinem Programm gibts es noch einige Probleme und ich finde die Fehler leider nicht:(.
Könnt ihr mir bitte helfen?
Vielen Dank im Voraus:)

Delphi-Laie 14. Apr 2012 16:49

AW: Brauche Hilfe bei "Schiffe versenken"
 
Gleich erste Bemerkungen zur Programmgestaltung:

Warum erscheint nicht gleich das Formular, auf dem gespielt wird? Stattdessen ein Startformular mit einer nicht selbsterklärend beschrifteten Schaltfläche "Button".

"Datei" erlaubt nur den Start (vielleicht später, im Spielverlauf, mehr). Warum dann nicht gleich das Spiel starten?

Das Formular ist nicht hinreichend gezoomt, um alle Spielfelder, also auch das rechte, vollständig anzuzeigen. Tja, und dann gibt es zwei blaue Spielflächen, eine davon kariert, mehr nicht. Was soll das? Ist das ein Scherz?

songoku123 14. Apr 2012 17:03

AW: Brauche Hilfe bei "Schiffe versenken"
 
Nein,nein. das ist sicherlich nicht meine Absicht.
Auf das erste Formular habe ich vor ein schickes Bild oder sowas ähnliches zu setzen.
Das Problem hast du ja schon erfasst. Nachdem das Gitter erstellt wurde soll man die Schiffe setzen können. Doch es passiert leider nichts.

Wenn du der Überzeugung bist, dass man das anders gestalten muss bin ich bereit für deine Vorschläge. Ich will ein einfaches "Schiffe versenken" programmieren.

Delphi-Laie 14. Apr 2012 17:13

AW: Brauche Hilfe bei "Schiffe versenken"
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von songoku123 (Beitrag 1161848)
Nein,nein. das ist sicherlich nicht meine Absicht.
Auf das erste Formular habe ich vor ein schickes Bild oder sowas ähnliches zu setzen.
Das Problem hast du ja schon erfasst. Nachdem das Gitter erstellt wurde soll man die Schiffe setzen können. Doch es passiert leider nichts.

Weil wohl nichts programmiert wurde. Ich schicke Dir mal ein analoges (=adäquates, nicht etwa nichtdigitales) Programm aus der guten alten Windows-3.x-Zeit mit. Müßte auf XP noch laufen. Dort kannst Du sehen, wie man an so etwas bezüglich der Programmgestaltung herangeht.

Für einen Anfänger ist das m.E. ein recht heftiges, anspruchsvolles Ziel.

songoku123 14. Apr 2012 17:20

AW: Brauche Hilfe bei "Schiffe versenken"
 
Ich versteh jetzt nicht, was du meinst mit "weil wohl nichts programmiert wurde". Ich habe schon die Prozeduren für das Erstellen der Schiffe etc. geschrieben. Die stehen auch im Quelltext. Doch aus irgendeinem (mir unbekannten Grund:cry:) passiert das nicht.

Delphi-Laie 14. Apr 2012 17:26

AW: Brauche Hilfe bei "Schiffe versenken"
 
Zitat:

Zitat von songoku123 (Beitrag 1161853)
Ich versteh jetzt nicht, was du meinst mit "weil wohl nichts programmiert wurde". Ich habe schon die Prozeduren für das Erstellen der Schiffe etc. geschrieben. Die stehen auch im Quelltext. Doch aus irgendeinem (mir unbekannten Grund:cry:) passiert das nicht.

Ich sehe, daß Du mein hochgeladenes Programm noch nicht heruntergeladen hast (0x aufgerufen). Ich tat das nicht zum Spaß, sondern um Dir zu helfen. Willst Du, daß man Dir hilft, oder was sollen diese Fragereien und Quengeleien? Schau Dir an, wie das programmiert wurde (also das, was dem Benutzer gegenüber an Schnittstellen geschaffen wurden, z.B., welche Einträge das Mainmeue bekam). Ohne weitere Einträge im Mainmenue werden auch keine Eingabeprozeduren möglich sein, und so werden eben die Schiffe-Erstellen- und/oder -Placieren-Prozeduren auch nie ausgeführt werden.

songoku123 14. Apr 2012 17:29

AW: Brauche Hilfe bei "Schiffe versenken"
 
Entschuldige.
Ich hatte deine Datei heruntergeladen. Aber das ist doch nur eine .exe Datei. Wie bekomm ich denn da den Quelltext? Oder habe ich etwas falsch verstanden?

Delphi-Laie 14. Apr 2012 17:32

AW: Brauche Hilfe bei "Schiffe versenken"
 
Zitat:

Zitat von songoku123 (Beitrag 1161857)
Entschuldige.
Ich hatte diese Datei, die du mir geschickt hast ist doch nur eine .exe Datei. Wie bekomm ich denn da den Quelltext? Oder habe ich etwas falsch verstanden=

Einen Quelltext habe ich dafür nicht. Der ist auch nicht nötig. Du willst doch lernen, also mußt Du Dich schon dieser Herausforderung stellen, selbst zu programmieren (also Quelltexte zu erschaffen), die ein solches oder ähnliches Verhalten erzeugen. Also, entweder werden nach dem Programmstart oder Formularerscheinen die Schiffe automatisch erstellt und placiert (wäre wohl das einfachste), oder eben erst nach einer (weiteren) Benutzereingabe ("Interaktion"). Das bleibt Dir als Programmgestalter überlassen.

songoku123 14. Apr 2012 17:39

AW: Brauche Hilfe bei "Schiffe versenken"
 
Ja,ok. Vielen Dank für deine Mühe mit mir.
Bei meinem Programm sollte man eigl, nachdem das Gitter gezeichnet wurde, schon sofort per Mausklick die Schiffe auf das 1.blaue Feld setzen können . Danach soll man auf das 2.blaue Feld schießen. Das passiert halt nicht, man sieht nur die Gitter.

Hast du den Quelltext von meinem Programm gesehen? Als Ich habe halt noch die Prozedur "onmousedown".

Delphi-Laie 14. Apr 2012 18:17

AW: Brauche Hilfe bei "Schiffe versenken"
 
Nein, ich sah mir Deinen Quelltext nicht näher an. Ich weiß nicht, ob "OnMouseDown" die geeignetste Ereignisprozedur ist, ich hätte (es) wohl eher (mit) "OnClick" versucht. Dann mußt Du in die Ereignisbehandlungsroutine hineinschreiben, daß ein Schiff placiert wird, und dieses natürlich auch anzeigen, was wohl am einfachsten mit einer Andersfärbung realisiert werden kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz