AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Rückgängig-Funktion ?

Ein Thema von ImPaty · begonnen am 20. Feb 2008 · letzter Beitrag vom 21. Feb 2008
Antwort Antwort
Seite 1 von 2  1 2      
ImPaty

Registriert seit: 7. Feb 2008
6 Beiträge
 
#1

Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:26
Hallo!
Ich habe folgendes Problem :

In meinem eigenen "miniPaint" habe ich bereits alle möglichen funktionen drin. Von Speichern über Laden, Füll- und Sprühdosenfunktion. Nun habe ich mich gefragt, wie ich es denn hinkriegen kann, das ich eine Rückgängig bzw. Wiederherstellen funktion habe! Ausprobiert habe ich schon viel aber eine richtige Lösung habe ich nciht gefunden ! HAT JEMAND EINE IDEE?

Hoffe auf Antwort !
MfG Paty
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:30
Zitat von ImPaty:
HAT JEMAND EINE IDEE?
Kein Grund hier rumzuschreien.

Was hast du denn schon ausprobiert? Ich würde vor jeder Aktion, die aktuelle Grafik im Speicher ablegen und dort sichern. Soll ein Schritt rückgängig gemacht werden, wird einfach die gespeicherte Version auf die Zeichenfläche kopiert. Und wenn du die Sicherungskopien in einer Liste (Verwalten von Objekten in einer Container-Klasse) ablegst, kannst du sogar mehrere Schritte rückgängig machen. Sollte nicht sehr schwer sein dies zu implementieren.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:38
hallo

ich hab hierfür mal ein Tutorial gefunden.

Anbei das Tutorial und die Quelltexte

Vielleicht hilfts dir ja!
Angehängte Dateien
Dateityp: zip undoredo_125.zip (588,9 KB, 72x aufgerufen)
Dateityp: zip raksrcd7_185.zip (225,9 KB, 39x aufgerufen)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:39
Hi und herzlich willkommen

eine komplette Lösung habe ich nicht parat, nur 3 Überlegungen:

- Welche Schritte sollen rückgängig gemacht werden? Genauen Punkt festlegen...
- Dann könntest Du
a) ein komplettes Bild mit aktuellem Stand im Speicher oder auf Festplatte ablegen oder
b) alle Pixeländerungen merken (x,y,OldColor,NewColor)
c) die Aktion "Füllen an Position x/y mit Ursprungsfarbe OldColor" merken und später eine "Gegenaktion daraus berechnen. Das wird aber nicht funktionieren, wenn Du weiße Bereiche, welche an schwarze Bereiche angrenzen, mit schwarz füllst. Ebenso würd es dabei Probleme mit "Sprühdose rückgängig" geben.

Also am einfachsten wird a) sein. Wenn Speicherplatz eine Rolle spielt dann b).

stahli
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:43
Man könnte auch die Aktionen in eigenen Ebenen durchführen, dann könnte man die Aktionen einzeln zurücknehmen ohne folgende Operationen zu beinflussen.
Markus Kinzler
  Mit Zitat antworten Zitat
ImPaty

Registriert seit: 7. Feb 2008
6 Beiträge
 
#6

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:50
Ich habe das hier mal ausprobiert :
Undo redo etc.

hat aber nicht funktioniert. Zwar keine Fehlermeldungen aber auch sonst nichts.


danke für die schnelle Antwort.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:53
Dir ist klar, dass sich der Code auf Texteingabefelder bezieht?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#8

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:55
Hallo,

über die grundlegende Arbeitsweise habe ich ein Tutorial Undo/Redo geschrieben. Dort gibt es auch eine Klasse, welche die Überlegungen umsetzt.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
ImPaty

Registriert seit: 7. Feb 2008
6 Beiträge
 
#9

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:55
Das habe ich vor einer stunde gelesen .. Ja ^^ Mit den Containern ist eine gute idee.
  Mit Zitat antworten Zitat
ImPaty

Registriert seit: 7. Feb 2008
6 Beiträge
 
#10

Re: Rückgängig-Funktion ?

  Alt 20. Feb 2008, 12:59
Ja kla das mit dem Tutorial ist ja okay aber funktioniert das überhaupt bei einem Image?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:42 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