delphide puzzle yapımı
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
delphide puzzle yapımı
arkadaslar ben bıl programlamada okuyorum.. delphide puzzle yapmam ıstendı ama cok fazla bı alt yapım yok .. bu konuda banayardımcı olabılırmısınız .. bu odevde ısısme yarayacak kaynak adı falan...
- White Rose
- Üye
- Mesajlar: 726
- Kayıt: 06 Tem 2005 09:41
- Konum: Güneyden
- İletişim:
Re: delphide puzzle yapımı
cok tesekurler ama benım yapmam gereken bu degıl herhengı bı resmı alıp delphide parcalamam gerekıyo daha sonra onları forum uzerınde dagıtmam lazm.
her bır resım parcasını fare ıle surukleyerek parcaların uygun yerıne getırmek...
her bır resım parcasını fare ıle surukleyerek parcaların uygun yerıne getırmek...
Re: delphide puzzle yapımı
Çok zor olmasada hiç bilmiyor ve yeni başlıyorsan işin zor. Hazır örnekler vardır aramaya devam...Fikir istersen şöle bir yöntem ile yapabilirsin...formuna resim kaç parça olacaksa o kadar panel koy bunları parça sayısına göre diz yani 16 parça varsa
4x4 şeklinde hizalamalarını yap....panel isimleri 16 parça ise örneğin p1,p2...p16 gibi adlandır...aynı şekilde resimleride adlandır sonra her sürükle bıraktan sonra indis kontrolü yap...yani p1 de r1 i p2 de r2 resmi varmı diye kotrol et....
4x4 şeklinde hizalamalarını yap....panel isimleri 16 parça ise örneğin p1,p2...p16 gibi adlandır...aynı şekilde resimleride adlandır sonra her sürükle bıraktan sonra indis kontrolü yap...yani p1 de r1 i p2 de r2 resmi varmı diye kotrol et....
Re: delphide puzzle yapımı
onerılerınız ıcın cok saolun ama resmın kaca boluncenı kullanıcı belırleyecekk.. resmı de kullanıcı bılınden yukleyecek. kullanıcının bolmek ıstedıgı sayı kadar panelı forma otomatık nasıl atcamm..zaten bunu yaptıktan sonra her parcanın yerını eslemek o kadar zor degıl..
Re: delphide puzzle yapımı
Bu soruyu soruyorsan işin zor..... resmı de kullanıcı bılınden yukleyecek. kullanıcının bolmek ıstedıgı sayı kadar panelı forma otomatık nasıl atcamm.
Re: delphide puzzle yapımı
Otomatik olarak istiyorsan mesela kullanıcı edite bi rakam girsin o kadar panel olustursun program
örnek;
kolay gelsin...
örnek;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
adet,dongu:integer;
panels:TPanel;
begin
try
adet:=StrToIntDef(edit1.Text,0);
For dongu:=0 To adet-1 Do
begin
panels:=TPanel.Create(form1);
with panels do
begin
name:='Parca'+inttostr(1+dongu);
Parent:=form1;
Top:=(dongu*90)+60;
Left:=50;
Width:=90;
Height:=90;
end;
end;
except
end;
end;
end.
kolay gelsin...
En son Search tarafından 07 Mar 2008 01:35 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
procedure TForm1.FormCreate(Sender: TObject);
begin
showmessage('Dehanın %1 i ilham %99u terdir.');
end;
end.
begin
showmessage('Dehanın %1 i ilham %99u terdir.');
end;
end.
Re: delphide puzzle yapımı
biraz uğraştım ama resim bölme kısmını yapamadım. o kısmını da siz araştırın.
verdiğim kodla çalışma zamanında nesne oluşturma ve kullanma konusunda fikriniz olur.
resmi parçalara ayırma (daha doğrusu belirli bölümnü başka bir resme kopyalama) kısmı eksik ama fikir vermesi açısından yardımcı olur sanırım
verdiğim kodla çalışma zamanında nesne oluşturma ve kullanma konusunda fikriniz olur.
resmi parçalara ayırma (daha doğrusu belirli bölümnü başka bir resme kopyalama) kısmı eksik ama fikir vermesi açısından yardımcı olur sanırım
Kod: Tümünü seç
var
Form1: TForm1;
paneldizi:array of Tpanel;
resimdizi:array of TImage;
asilresim:Timage;
procedure TForm1.btnPanelOlusturClick(Sender: TObject);
var
i,satir,sutun,adet,_sutun,_satir:integer;
od:TOpenDialog;
sourcerect,destrect:Trect;
begin
od:=TOpenDialog.Create(nil);
if od.Execute then
begin
asilresim:=TImage.Create(self);
asilresim.Picture.LoadFromFile(od.FileName);
Image1.Picture.LoadFromFile(od.FileName);
adet:=StrToIntDef(edAdet.Text,9);
setlength(paneldizi,adet);
SetLength(resimdizi,adet);
sutun:=0;
satir:=0;
for i:=0 to adet-1 do
begin
paneldizi[i]:=TPanel.Create(self);
with paneldizi[i] do
begin
Width:=100;
Height:=100;
left:=sutun*100+10;
top:=satir*100+10;
sutun:=sutun+1;
if sutun=3 then
begin
sutun:=0;
satir:=satir+1;
end;
Parent:=self;
end;
resimdizi[i]:=TImage.Create(self);
resimdizi[i].Parent:=paneldizi[i];
end;
_sutun:=0;
_satir:=0;
sutun:=3;
for i:=0 to adet-1 do
begin
{sutun:=sutun+1;
if sutun=3 then
begin
sutun:=0;
satir:=satir+1;
end;
}
sourcerect.Left:=_sutun;
sourcerect.Right:=_sutun+round(asilresim.Picture.Width/sutun);
sourcerect.top:=_satir;
sourcerect.Bottom:=_satir+round(asilresim.Picture.height/satir);
resimdizi[i].Width:=round(asilresim.Picture.Width/sutun);
resimdizi[i].Height:=round(asilresim.Picture.Height/satir);
resimdizi[i].Canvas.CopyRect(sourcerect,asilresim.Canvas,sourcerect);
_sutun:=_sutun+round(asilresim.Picture.Width/sutun);
_satir:=_satir+ round(asilresim.Picture.Height/satir);
resimdizi[i].Canvas.Pen.Color:=clred;
resimdizi[i].Canvas.Pen.Width:=5;
resimdizi[i].Canvas.TextOut(10,10,inttostr(i));
resimdizi[i].AutoSize:=true;
end;
end;
end;
bazen yükselmek için önce dibi görmek gerekir...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

Re: delphide puzzle yapımı
ya cok saolun nete yenı gırebıldım hemen denıcem kodları delphide.. ugrastıgınız ıcın cok saolun..
Re: delphide puzzle yapımı
Söyleyeceğim şey seni motive edip programlama konusu ile daha ciddi uğraşmanı mı sağlar, yoksa hiddetlendirip karşı savunmaya geçmeni mi sağlar bilmiyorum.
Sorduğun şeyler kendine meslek olarak bilgisayar programlamayı seçmiş ve bilgisayar programlama bölümünde okuyan birisinin soruları değil. Bu işi hobi olarak yapmayı düşünen, akşam iş çıkışlarında evde amatör olarak bilgisayar programlama ile ilgilenen birisinin soracağı sorular.
Madem kendine meslek olarak bu alanı seçtin, programlama ile ciddi olarak ilgilenmelisin. Bu şekilde mesleğinde başarılı olman mümkün değil.
Sorduğun şeyler kendine meslek olarak bilgisayar programlamayı seçmiş ve bilgisayar programlama bölümünde okuyan birisinin soruları değil. Bu işi hobi olarak yapmayı düşünen, akşam iş çıkışlarında evde amatör olarak bilgisayar programlama ile ilgilenen birisinin soracağı sorular.
Madem kendine meslek olarak bu alanı seçtin, programlama ile ciddi olarak ilgilenmelisin. Bu şekilde mesleğinde başarılı olman mümkün değil.
Re: delphide puzzle yapımı
ilerideki meslegım bilgisayar programcılıgı olamaz bu konuda kendımı yeterlı hıssetmıyorum .su an ıkı yıllık bı okulda bılgısayar programcılıgı okuyorum. amacım dgs ıle bıl muhendıslıgıne gecmek.. dgsyı kazanmam için bu delphiyi gecmem lazım. dolayısıyla bu puzzle yapmam gerekıyo.. ..elestirilerınız ıcın saolun..
Re: delphide puzzle yapımı
Selam,
Basit bir örnek hazırladım. Kullanımı da basit.
Yatay Parça Sayısı ve Dikey Parça Sayısı'nı giriyorsunuz. Daha sonra Resmi Seç düğmesine basıyorsunuz (JPG veya BMP). Program otomatik olarak girdiğiniz değerlere göre resmi parçalıyor ve bir scrollbox'ın üzerine dağıtıyor. Sonra da istediğinizi mouse ile seçip taşıyorsunuz. Seçili olan parçanın focus çerçevesi de çiziliyor. Seçili olan parçayı klavyeden ok tuşları ile hareket ettirebiliyorsunuz (Snap özelliği eklemekten daha kolaydı da). Seçilen resim otomatik olarak en öne getiriliyor, ama Öne Getir, Geri Gönder düğmeleri ile bunu da değiştirebiliyorsunuz. Resmi Göster düğmesi de puzzle resminin tamamını ayrı bir formda gösteriyor. Puzzle Resmi formunu özellikle biraz değişik hazırladım, örneğin Görev Çubuğunda görünüyor ve ana programdan bağımsız bir biçimde küçültüp büyültebiliyorsunuz.
Bazı kontrolleri çok önemsemedim, eğer isterseniz siz girebilirsiniz. Örneğin OpenDialog penceresinde filter stringini ayarlamadım, ama program jpg ve bmp dosyalarını açabiliyor. Diğerlerinde hata verecektir (resmi parçalarken). Ayrıca parça sayıları olarak integer girmediğiniz zaman da program patlayacaktır. Buna benzer ıvır zıvır detayları sizin girmeniz gerekecek.
Kodu aşağıdaki linkten indirebilirsiniz.
http://rapidshare.com/files/98823389/Pu ... e.rar.html
Kolay gelsin,
Bahadır Alkaç
Basit bir örnek hazırladım. Kullanımı da basit.
Yatay Parça Sayısı ve Dikey Parça Sayısı'nı giriyorsunuz. Daha sonra Resmi Seç düğmesine basıyorsunuz (JPG veya BMP). Program otomatik olarak girdiğiniz değerlere göre resmi parçalıyor ve bir scrollbox'ın üzerine dağıtıyor. Sonra da istediğinizi mouse ile seçip taşıyorsunuz. Seçili olan parçanın focus çerçevesi de çiziliyor. Seçili olan parçayı klavyeden ok tuşları ile hareket ettirebiliyorsunuz (Snap özelliği eklemekten daha kolaydı da). Seçilen resim otomatik olarak en öne getiriliyor, ama Öne Getir, Geri Gönder düğmeleri ile bunu da değiştirebiliyorsunuz. Resmi Göster düğmesi de puzzle resminin tamamını ayrı bir formda gösteriyor. Puzzle Resmi formunu özellikle biraz değişik hazırladım, örneğin Görev Çubuğunda görünüyor ve ana programdan bağımsız bir biçimde küçültüp büyültebiliyorsunuz.
Bazı kontrolleri çok önemsemedim, eğer isterseniz siz girebilirsiniz. Örneğin OpenDialog penceresinde filter stringini ayarlamadım, ama program jpg ve bmp dosyalarını açabiliyor. Diğerlerinde hata verecektir (resmi parçalarken). Ayrıca parça sayıları olarak integer girmediğiniz zaman da program patlayacaktır. Buna benzer ıvır zıvır detayları sizin girmeniz gerekecek.
Kodu aşağıdaki linkten indirebilirsiniz.
http://rapidshare.com/files/98823389/Pu ... e.rar.html
Kolay gelsin,
Bahadır Alkaç
Re: delphide puzzle yapımı
allah razı olsunn ... cok mutlu oldum ya. tam ısıme yarayacak programı gondermıssınız.. bız onun uzerınde degısıklık yapıp istenılen projeye uygun hale getırırız . yardımınız ıcın cok tesekkurler..
- White Rose
- Üye
- Mesajlar: 726
- Kayıt: 06 Tem 2005 09:41
- Konum: Güneyden
- İletişim:
Re: delphide puzzle yapımı
İstenilen programı aşağıdaki linkten indirebilirsiniz
http://rapidshare.com/files/99452314/PUZZLE.rar.html

http://rapidshare.com/files/99452314/PUZZLE.rar.html
Re: delphide puzzle yapımı
Benim anlamadığım ders geçmesi için neden bu arkadaşa hazır uygulama yapıyorsunuz...Yani şimdi bu arkadaş gidecek bunu ben yaptım hocam diyecek sınıfı geçecek..genelde zaten bizim okullarımızda böyle sınıf geçiliyor...ben delphide toplama yapamayacak adamların mezun olduğunu bilirim....yapmayın arkadaşlar bilmiyorsa geçmesin. Burda her sınıfta olduğu gibi kafa patlatan birşeyler yapmaya çalışan birkaç tane elemanın ne günahı var dimi...sonra herkes ben programcıyım diye çıkıyor piyasaya...tabi bu işte en büyük pay hocaların ve sistemin, hocalar kimin nee yapıp ne yapamayacağını biliyor zaten... ama malesefe vasıfsız ve birşey bilmeden mezun olunmalara her okul ve fakülte izin veriyor...sonrada üniversite bitirdim olunuyor...bitirenlerin hali ortada...yazılım işinde kafa beyin patlatmadan olmaz sayın hazırcı arkadaşlar....birde bu esra ne acayiptir ki ben yazılım işine girmeyecem diyor ama dgs ile mühendisliği girecem diyor, madem sevmiyorsun ne işin var bil.mühendisliğinde bu anlayış ile nasıl okursun orda bilmem...yani mühendisliği bitirince ne yapacaksın acaba?