Sık Kullanılan Bileşenler
29-03-2020, Saat: 18:46 (Son Düzenleme: 30-03-2020, Saat: 14:13, Düzenleyen: SimaWB.)
Tool Palette çok fazla bileşen var eskiden olduğu gibi her birini tek tek incelemeye yetecek zamanım yok maalesef. Malum, yaş da bir faktör
Mobil için bir uygulama geliştiriyorum (frame kullanacağım).
Ekran tasarımı kısmında sonradan bir yerlere toslamamak için sık kullanılan görsel bileşenlerin listesi konusunda yardımcı olursanız sevinirim. TListView gibi.
Buradaki amaç ekran layout'unu hazırlarken bölümlemeleri, butonları vs. neyle yapmak lazım.
Örneğin resmi bir eğitimde bölümleme ve butonlar için sadece TRectangle kullanılmış.
Bana bir liste yaparsanız en azından max 15-20 çok kullanılan bileşen üzerinden bir araştırma yapayıp istiyorum.
Anma standart Tool Palette için. OrangeUI vs. değil.
29-03-2020, Saat: 20:54 (Son Düzenleme: 29-03-2020, Saat: 20:57, Düzenleyen: Mr.Developer.)
Bu sorunun sorulmasıyla birlikte onlarca yazılımcının özellikle tasarım konusundaki bakış açılarını bilmek görmek duymak çok güzel olur.
Delphi’de sadece mobil üzerine uygulamalar ve uygulama tasarımları gerçekleştiren birisiyim. Bu sorunuzu cevaplamaktan büyük mutluluk duyacağım.
Size tasarımsal olarak önerilerim ise ;
TLayout : Her uygulamamda ve her yeni projede form’a eklediğim ilk bileşendir.
Kullanma sebebim ise, uygulama arayüzüne ekleyeceğim tüm görsel bileşenleri taşımakta zorlanmamak, Örneğin 3 form’dan oluşan bir uygulamam olduğunu varsayarsak ( olmaz da ) yeni tasarımda ise tabcontrol kullanmak istediğimde tabcontrol’lere aktarmak bu sayede çok basit oluyor. Veyahut uygulama ekranında popup şekilde göstermek. Ya da uygulamanıza, uygulama içi ekran görüntüsü alma özelliği eklemek istediğiniz de
tasarım değişikliğine gitmek istediğiniz de daha kolay anlayacaksınızdır önemini.
TGridPanelLayout : arayüzdeki nesnelerin telefon tablet gibi büyük veya küçük ekranlarda uyumunu sağlamak için kullanabileceğiniz bir bileşen. Görsel bileşenlerin tek tek align, anchors gibi özellikleri ile uğraşmak istemiyorsanız kullanabilirsiniz.
TRectangle : Geldik en sevdiğim bileşene… mobil uygulama yapıp da bunu kullanmıyorsanız ciddi anlamda tasarımsal kısıtlamalara maruz kalırsınız ve profesyonel tasarımlar ortaya koyamazsınız.
Button, checkbox, radiobutton,speedbutton, switch, image gibi ve bu işlevleri gören tüm diğer bileşenlerin yerine kullanabileceğiniz efsane bir bileşendir.
Profesyonel bir uygulama tasarlamak için olmazsa olmazdır.
Buttonlar, style dosyaları bile kullanıyor olsanız size istenilen mükemmelliyeti sunamazlar. Stlye dosyasının size sunduğunun dışına çıkamazsınız.
Checkbox’lar, radiobutton’lar, switch’ler modern bir arayüze sahip uygulamalar için tarihi eser niteliğindedir. Özellikle de yan menü kullanmayı akıl bile etmeyin. TRectangle her konuda size mükemmel sonuçlar verir. ( hadi canım sende demeyin gerçekten kullanınca işler değişiyor )
İmage bileşeninin yerine rahatlıkla olmasa da kullanılır. Eğer resim sabit pixsellere sahipse kavisli köşeleri olan bir minik image’e rahatlıkla dönüştürülebilir bu da gerçekten şık bir arayüz sunar.
Switch kullanan kişilere üşengeç gözüyle bakıyorum. Checkbox ve radiobutton da da öyle.
Rectangle ile özel switch, checkbox ya da radiobutton rahatlıkla ve daha modern şekilde yapılabilir.
TEdit : Bahsetmeme gerek yok fakat önerim şudur ki, alt kısımdaki arka plan çizgisini yok ettiğiniz de TRectangle ile mükemmel ikili oluyorlar
TCircle : TRectangle ile kullanıldığında çok hoş giriş ekranları ya da kullanıcı profil ekranları tasarlanabilir.
TAniIndicator : kullanmayı pek sevmesem de işlemlerde bekletme ekranı olarak kullanmak için idealdir. Harici bileşenlerden bulup kullanın. Daha fazla özelleştirilebilirler. Dahili olanın yerine “Bekleyin” yazısı yazmak bunu yine Trectangle ile tasarlamak daha cazip ve hoş. ( nitekim ben öyle yapıyorum )
TListbox : verileri uğraşmadan listelemekte çok yardımcı olsa da yukarıda saydığım bileşenlerle oluşturduğunuz uygulamaya yakışmayacaktır. Bunun yerine yine Trectangle kullanmak uğraştıcı olsa da mantıklıdır. Whatsapp, telegram gibi uygulamaların sohbet ekranı gibi baloncuklar oluşturarak verileri modern şekilde listeleyebilirsiniz. Nitekim ben öyle yapıyorum.
Tlistview : Listbox’dan daha fazla özelleştirme sunsa da yine modern arayüzler için üzerinde çok uğraşılmadığı taktirde uygun değildir. O kadar çabaya gerek kalmadan yine Trectangle işlerinizi görecektir.
Tcombobox : Yine ilkel bir bileşen… ve yine TRectangle ile muhteşem seçim panelleri yapabilirsiniz.
Yazı Trectangle sponsorluğunda yazılmış gibi farkındayım ama hakkını vermek lazımdı.
Kullanmanızı önermediğim bileşenleri de söyleme sebebim Trectangle’ın önemini vurgulamaktı.
Şuanda aklımda bunlar var ve şimdilik bahsedebileceğim bunlar. Umarım size fayda sağlar ve profesyonel tasarımlar ile karşımıza çıkarsınız.
Muhattabım sadece siz değil bu yazıyı okuyan herkestir. Her şey gönlünüzce olsun…
Not : RoundRect, CalloutRectangle, panel gibi bileşenleri tasarımsal olarak önermiyorum. TRectangle fazlasıyla yeterlidir…
29-03-2020, Saat: 22:31 (Son Düzenleme: 29-03-2020, Saat: 22:32, Düzenleyen: behcet.tolga.)
Mr. Developer Kardeşim,
Ben sadece liste istedim; zahmet edip her biri için ayrıntı da vermişsiniz. Süper oldu; çok teşekkürler.
Bunlara bakacağım; TRectangle'ı sözgelimi radiobutton gibi ya da TlistView yerine nasıl kullanılacağını tasavvur edemedim şimdi (yani ekstra kod yazmadan).
Mesela TRadiobutton, TGroupbox ile kullanılıyordu ki biri seçildiğinde diğeri otomatik deactive olsun (single select). Yanyana birden fazla TRectangle kullanıldığında hepsinin OnClick'inden çağrılacak bir prosedür ile diğerlerini deactive etmek (mesela rengini, bevel'i değiştirmek vs.) gibi bir yaklaşım mı? Yoksa daha "doğal" bir yol var mı?
TListBox, TComboBox - bunlar benim eski dostlarımdı; "ilkel" demiyelim ne olur; 25 senelik hukukumuz var
Konuya katkıları bekliyoruz o zaman
30-03-2020, Saat: 10:46
Ne demek yardım edebileceğim konu olduğunda elimden geleni yapmaya çalışırım elbette.
TRectangle elbette esas görevi listelemek ya da seçim yaptırmak olan bileşenlerin özelliklerini direkt olarak sunmaz. Zaten adından da anlaşılacağı üzere bir geometrik şekilden ibaret kendisi.
Onu diğer bileşenlerin alternatifi yapan event’larıdır sanırım.
Buradaki temel husus tamamen görsellik üzerine ; kodsuz bir şekilde elbette onların yerine kullanılamaz. Ama kodlar vasıtasıyla onlardan çok daha iyi işler ortaya koyarlar düşüncesindeyim. Nitekim kendim kullandığım için bunları diyebiliyorum.
Bahsini ettiğiniz kullanım şekli OnClick olayları ile elbette. Şimdilik doğal bir yolu var mıdır bilmiyorum ama olsaydı diğer bileşenler zaten olmazdı düşüncesindeyim.
Sonra delphi gibi bir dilde radiobutton bile yok falan denmesi acayip kaçardı
Birazdan ya da yetiştirebildiğim zaman burada temel olarak sadece TRectangle kullanarak tasarımlar oluşturup paylaşacağım. Yada mevcut olan uygulamalarımın ekran görüntülerini ekleyeceğim. Yazımın hakkını vermeyi isterim.
Listview gibi listeleme bileşenlerinin yerine kullanmak için tasarım anında değil kod tarafında bileşen ( TRectangle ) oluşturarak kullanılabilir. Ne kadar pratiktir orası tecrübesi olanların söyleyeceği kısım. Ama uğraşlarınızın sonucu pratikliği unutturacaktır eminim.
25 yıl… Ben bir ayağa kalkayım
30-03-2020, Saat: 12:16
Elimden geldiğince karşılaştırarak tasarım yapmaya çalıştım. herşey sizin beğeninize kalmış.
birisinde sadece rectangle diğerinde ise panel, checkbox ve style dosyası kullandım. gönül isterdi ki tavsiye etmediğim her bileşeni bu şekilde anlatayım ama işler hep beklendiği gibi olmuyor.
delphican tasarim.zip (Dosya Boyutu: 833,18 KB / İndirme Sayısı: 19)
Ayırca dün dile getirmeyi unuttuğum bir hususa daha değinmek istiyorum ;
Uygulamalarda görsel olarak geri tuşu kullanılmasını da önermiyorum. gesture manager kullanmak ve parmak hareketleri ile sayfa geçişleri yapmak çok daha uygun olacaktır.
hem de arayüzü daha verimli ve sade halde tutmuş olacaksınızdır.
Umarım fayda sağlamıştır...
30-03-2020, Saat: 12:22
@Mr.Developer Birlikte yaptığımız onca uygulamada böyle tasarım niye göremedik
30-03-2020, Saat: 12:22 (Son Düzenleme: 30-03-2020, Saat: 12:23, Düzenleyen: klavye.)
(30-03-2020, Saat: 12:16)Mr.Developer Adlı Kullanıcıdan Alıntı: Merhaba,
Elinize saglik. Listbox ile ilgilide bir ornek gonderebilir misiniz?
30-03-2020, Saat: 12:33
(30-03-2020, Saat: 12:22)klavye Adlı Kullanıcıdan Alıntı:
Teşekkür ederim hocam. Elbette.
Sadece ekran görüntüsü ;
31-03-2020, Saat: 10:15
(29-03-2020, Saat: 20:54)Mr.Developer Adlı Kullanıcıdan Alıntı: Merhaba,
Bizimle düşünce ve görüşlerinizi paylaştığınız için çok teşekkür ederim. bende yazdıklarınızdan bir kısmını kullanıyorum o yüzden daha farklı bir şey yazamayacağım. yeterli olacağını düşünüyorum.
31-03-2020, Saat: 10:48
(31-03-2020, Saat: 10:15)Bay_Y Adlı Kullanıcıdan Alıntı:
Düşüncenizi paylaşmanıza vesile olduysam cümlemin başında dediğimi gerçekleştirmişim demektir
Uzun zamandır kullanılan programın açılmaması 10.Köy 15 6.831 31-10-2016, Saat: 09:47
Tarih: 07-06-2020, Saat: 01:28 Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB.