1. sayfa
bildiğim kadarıyla popup menü yü kullanarak menünü oluşturcaksın. zaten popup menü de sağ tıklamayla çalışıyor. bi dene bende yeni başladım yanlış olabilir |
bir popup menu nesnesi al ve hangi billeşen (kontrol) üzerinde açılşmasını istiyorsan object inspectorden ilgili kontrolün popupmenusune eklediğin popup menuyu seç |
peki hocam delphi içinde sıralama nası yaptıracam.... mesela elimde n tane tarih girişi olsun(gün.ay.yıl olarak) bunları nassı küçükten büyüğe veya büyükten küçüğe sıralatacağıım??? lütfen aceleee |
datalarını listbox ' a yükle. Burdanda listbox.sorted:=true; yaparsan en basitinden sana sıralar. |
popup menu işini kolaylaştıracak. |
katılıyorum bu anlatım doğrudur. ben bu şekile bir popup menu yaptım oldu. ![]() |
bak bu kod için yarım saat uğraştım.. biri gelipte iki satır kod yazarsa boğazına sarılırım ona göre ![]() zaten anlaşılıyor ama, Forma tarihlist ve siralitarih adında iki listbox ve sirala adında bir buton ekle Eğer bu işlemi database ile yapıyorsan zaten database den sıralı olarak çağırabilirdin... ama buda iyi bir örnek oldu..delphi ye başlayanlar için... var Form1: TForm1; arabellek:Tstringlist; implementation {$R *.dfm} { 02.09.2005 13:40:19 tarih formatı örneği 02.09.2005 tarih formatı örneği } Procedure sayisirala(list:TStrings); var bos:int64; s:array of int64; i,j,l:integer; begin l:=list.Count; SetLength(s,l); for i:=0 to l-1 do s:=strtoint(list.Strings); for i:=0 to l do begin for j:=i to l do begin if s>s[j] then begin Bos:=s; s:=s[j]; s[j]:=Bos; end; end; end; list.clear; for i := 1 to l do list.add( inttostr(s[i-1]) ); end; procedure TForm1.siralaClick(Sender: TObject); var a,b:integer; begin arabellek:=TStringList.Create; arabellek.Clear; with tarihlist.items do begin add('01.07.1993 01:40:18'); add('05.02.2002 07:40:13'); add('23.09.2015 08:40:17'); add('07.09.2006'); add('25.12.2000'); add('02.09.2005 23:15:18'); add('21.09.2004'); add('09.12.2001 13:40:10'); add('11.09.1998 21:40:14'); add('20.09.2001 15:40:11'); end; for a:=0 to tarihlist.Items.Count-1 do arabellek.Add(inttostr(DateTimeToUnix(StrToDateTime(tarihlist.Items.Strings[a])))); sayisirala(arabellek); siralitarih.clear; for b:=0 to arabellek.Count-1 do siralitarih.Items.Add(DateTimeToStr(EncodeDate(1970,1,1)+ strtoint(arabellek.Strings) / SecsPerDay)) ; arabellek.free; end; |
iyide arkadaşım benim yazdığım kaçtane program ve o kadar delphiyle program yazan arkadaşım var tarihleri sıralamak için bu kadar uğraşı verdiğimi ve verdiklerini hatırlamıyorum.. Hem sen popupmenuyü yapman 10 sn yeni alır önemli olan işlevleridir. Sen tarihleri sıralamak yerine veritabanı bağlantısı kurmayı ve SQL komutlarını öğren.. Database olmadan bi program yazmak çok zordur boşuna zahmete girersin.. SQL ile örnek olarak bi .. ORDER BY .. Dersin sana 1 sayfa yazmaktan kurtarır bilgin olsun ne diyeyim.. |
haklısın...amaç sadece arkadaşa yardımcı olmak değil.. örnek kod göstermek.. ayrıca sayı sıralama hakkında googleda bir örnek aradım bulamadım..işte buda örnek olmuş oldu.. ![]() amaç başkalarınada yardımcı olmak değilmi? |
1. sayfa
FARENİN SAĞ TUŞUNUN İŞLEVİNİ NASI AÇABİLİRİM??
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.