bilinen çizim programlarına benzer birşeyler yapıyorum. mesela 20 tekrarlı undo yapmak istiyorum. formun üzerinde yaptığım her değişikliği bir listeye kaydedeceğim. mesela bir çizgi çizdim, bunu listeye line (x,y) to (x,y) diye ekleyeceğim. ondan sonra dikdörtgen çizdim bunu listeye rect(x,y) to (x,y) diye kaydedeceğim. undo yapmak istediğimde bu listeye göre geri alacağım.
bundan daha iyi sonuç verecek bir çözüm biliyormusunuz?
bu mantık doğru mu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Bende zamanıda böyle bişey yapmıştım. Tüm çzidiklerimi veri tabanına atıyordum. tipi, örn. kare, line, circle gibi, yalnız arc gibi şekiller çizersen 2 nokata değil 4 nokta iazım olacaktır. Bunlarıda planlarken dikkat etmeni tavsiye ederim. tabiki Rundo yapmak istersen renk gibi bilgileride tutman gerekecek.
İyi Çalışmalar.
İyi Çalışmalar.
I love my car.
Blog Yaptık
Blog Yaptık
Hocam dediğin gibi bir history mantığı kullanabilirsin. Ama unutmaki kullanmış olduğun dil Delphi, yani Nesne yapılı bir dil. Nesnenin nimetlerinden faydalanabilirsin. Temel nesne sınıfı oluşturup, şekilllerini bunlardan türetip çizdirebilirsin. Daha sonrada silmek isteğinde o nesneyi silersin. Hem nesne kullandığın zaman daha sonrada o nesneye ait, renk, çizgi kalınlığı, dolgu rengi gibi özellikleride değiştirmen mümkün olabilir.
kolay gelsin.
kolay gelsin.
Selamlar,
Eğer çizimi, nesne bazında undolamak istersen, hangi adımda ne yaptığını sürekli olarak biryerlere kaydetmek zorundasın, eğer ne yaptığı önemli değil ben Picture'ı 20 defa geriye alayım dersen o zaman Her işlemden sonra (yeni bir çizim yapacak iken) picture'ı kaydetmelisin. Picture kaydedersen ne yaptığıyla ilgilenmez, standard picture olarak kaydedersin. İçeride ister Çizgi çizmiş ister Renk değiştirmiş, ister cube yapmış seni ilgilendirmez, nihayetinde sen picture'ı saklayacaksın. Bu yöntem daha basittir, çizilen nesneyi bilmenize gerek bırakmaz.
Eğer nesneleri saklayacağım dersen o zaman işin biraz daha karmaşık olur.
Kolay Gelsin
Eğer çizimi, nesne bazında undolamak istersen, hangi adımda ne yaptığını sürekli olarak biryerlere kaydetmek zorundasın, eğer ne yaptığı önemli değil ben Picture'ı 20 defa geriye alayım dersen o zaman Her işlemden sonra (yeni bir çizim yapacak iken) picture'ı kaydetmelisin. Picture kaydedersen ne yaptığıyla ilgilenmez, standard picture olarak kaydedersin. İçeride ister Çizgi çizmiş ister Renk değiştirmiş, ister cube yapmış seni ilgilendirmez, nihayetinde sen picture'ı saklayacaksın. Bu yöntem daha basittir, çizilen nesneyi bilmenize gerek bırakmaz.
Eğer nesneleri saklayacağım dersen o zaman işin biraz daha karmaşık olur.
Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/