Bilder mit nur einem Knopf wechseln

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Jan69
Beiträge: 2
Registriert: Mi 6. Mai 2020, 16:01

Bilder mit nur einem Knopf wechseln

Beitrag von Jan69 »

Guten Tag,

Ich habe die Aufgabe, in das Programm 8 verschiedene Bilder in einer Reihenfolge einzufügen. Wenn man einen Knopf drückt, soll jeweils das nächste Bild angezeigt werden
(7 Bilder sollen unsichtbar sein und eins sichtbar). Ich bin neu auf Lazarus und weiß daher nicht, wie der Code dafür lautet.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2639
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Bilder mit nur einem Knopf wechseln

Beitrag von m.fuchs »

Hallo Jan69,

dein Beitrag liest sich sehr nach einer Hausaufgabe. Das ist auch grundsätzlich kein Problem, die meisten Lehrer begrüßen es, wenn man in einem Forum selbstständig Fragen stellt. Und auch unter der Mehrzahl der hiesigen Mitglieder ist es gerne gesehen. Allerdings können wir deine Hausaufgabe nicht für dich lösen, dann wäre ja weder ein Lerneffekt für dich dabei noch möchte man einfach so gratis Arbeit eines anderen erledigen.

Daher: hast du denn schon einen Ansatz wie du vorgehen möchtest? Hast du bereits mit einem Programm angefangen? Welche Komponenten sind dort bereits vorhanden? Wie stellst du dir in etwa den Ablauf des Programms vor?

Mit Antworten auf diese Fragen, können wir dir sicherlich auch weiterhelfen.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Jan69
Beiträge: 2
Registriert: Mi 6. Mai 2020, 16:01

Re: Bilder mit nur einem Knopf wechseln

Beitrag von Jan69 »

Ich habe schon ausprobiert, mithilfe des "if ... then ... " Befehls zu überprüfen, welches Bild gerade sichtbar ist und dann zum nächsten zu wechseln. Aber es wurde immer zum ersten Bild gewechselt, wahrscheinlich weil alle Befehle gleichzeitig laufen. Ich habe unten ein Beispiel hinzugefügt, wie ich es für Bild 1 gemacht habe. So habe ich es dann für alle Bilder gemacht. Als Komponenten habe ich die 8 Bilder und den Knopf schon eingefügt.
Dateianhänge
Unbenannt.PNG
Unbenannt.PNG (3.58 KiB) 2004 mal betrachtet

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2639
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Bilder mit nur einem Knopf wechseln

Beitrag von m.fuchs »

Poste mal bitte den ganzen Quellcode hier in einen Beitrag, nicht nur einen Ausschnitt als Bild. Nach deiner Beschreibung vermute ich einen einfachen kleinen Logikfehler, das sollte zu beheben sein.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6208
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Bilder mit nur einem Knopf wechseln

Beitrag von af0815 »

Schon mal daran gedacht in einer Variablen von 1 bis 8 zu zählen. je nach Variblenwert zeigst du dein Bild an. Wenn die Variable größer als 8 wird, so setzt du die Variable wieder auf 1 zurück.

Es gibt viele Möglichkeiten es zu lösen.

BTW: Bei deiner Methode vermute ich mal, das die Reihenfolge falsch ist und du in einem durchlauf Moon1 bis Moon8 freigibst. Das sieht man aber sofort wenn man den Debugger von Lazarus verwendest und Befehl für Befehl durchgehst. Ändere die Reihenfolge von Moon8 hinunter zu Moon1
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

KreuzBlick
Beiträge: 36
Registriert: Fr 3. Mai 2019, 17:45
OS, Lazarus, FPC: Win8.1 (L 2.2.4 FPC 3.2.2)
CPU-Target: 64Bit
Wohnort: Saarland

Re: Bilder mit nur einem Knopf wechseln

Beitrag von KreuzBlick »

Noch ein kleiner Hinweis: Bei der Bedingung
Moon1.visible = true
kann man das "= true" weglassen, denn wenn Moon1.visible = true ist, dann hat Moon1.visible selbst den Wert true.
Viele Grüße
Gerold

Mathias
Beiträge: 6193
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Bilder mit nur einem Knopf wechseln

Beitrag von Mathias »

Ich würde dies mit eine ImageList lösen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Bilder mit nur einem Knopf wechseln

Beitrag von Winni »

Hi!

Viele, viele Lösungen...

Wie wärs denn mit einem array der Dateinamen?

Const
Filenames = array[0..7] of string = (
'C:\users\jan69\bild1.png',
'C:\users\jan69\bild2.png',
......
);

Winni

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6208
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Bilder mit nur einem Knopf wechseln

Beitrag von af0815 »

Jan69 ? Noch da oder schon wieder verschwunden ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten