Windows klasik teması ile çalıştırmak.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Windows klasik teması ile çalıştırmak.
Windows üzerindeki aktif kullanıcı temasını yoksayıp, sadece yazdığımız programı, Windows'un klasik teması ile görüntületmenin bir yolu var mı acaba?
Şimdiden teşekkürler...
Şimdiden teşekkürler...
Re: Windows klasik teması ile çalıştırmak.
xpmanifest eklemezsen programına zaten klasik görünümde çalışacaktır....
Re: Windows klasik teması ile çalıştırmak.
Yanlış anladınız herhalde. Klasik tema derken aşağıdaki temayı kastetmiştim. XP stilinde olmayan tema.Battosai yazdı:xpmanifest eklemezsen programına zaten klasik görünümde çalışacaktır....

Re: Windows klasik teması ile çalıştırmak.
Doğru anladım, dediğim unit programınıza eklenmemiş ise delphi componentleri windows klasik modunda görünecektir...Standart budur zaten...
Re: Windows klasik teması ile çalıştırmak.
xpmanifest kullanmıyorum. hiçbir formumda xpman uniti de yoktur. Dediğiniz gibi xpmanifest kullanmayınca butonlar klasik olarak gelir ancak pencere yapısını Windows, otomatik olarak görsel stile çevirip açar. Benim engellemeye çalıştığım da bu zaten.Battosai yazdı:Doğru anladım, dediğim unit programınıza eklenmemiş ise delphi componentleri windows klasik modunda görünecektir...Standart budur zaten...
Ben klasik tema derken bir bütün olarak pencere yapısını klasik hale getirmeye çalışıyorum. Zaten butonlarla ilgili herhangi bir problemim yok. Dolayısıyla xpmanifestin de konuyla bağlantısı yok.
Re: Windows klasik teması ile çalıştırmak.
Daha önce biri projen üzerinde çalışmış veya sen devralmışsan veya bir ara ekleyip silmişsen yinede xpmanfest görevini görür böyle bir cinsliği vardır yani...forumda nasıl kaldırılacağına dair konular olacaktı yanılmıyorsam aramakta fayda var....
Re: Windows klasik teması ile çalıştırmak.
Hocam ne olursun bırak artık şu xpmanifestiBattosai yazdı:Daha önce biri projen üzerinde çalışmış veya sen devralmışsan veya bir ara ekleyip silmişsen yinede xpmanfest görevini görür böyle bir cinsliği vardır yani...forumda nasıl kaldırılacağına dair konular olacaktı yanılmıyorsam aramakta fayda var....

Yine de ilgilenip, mesaj attığınız için teşekkürler

Re: Windows klasik teması ile çalıştırmak.
Çeşitli skin componentleri var, forumda arasanız bilgi bulabilirsiniz. Ama ben standart bırakıp, kullanıcı hangisi seçmişse öyle gelmesinden yanayım.
Kolay gelsin.
Kolay gelsin.
Re: Windows klasik teması ile çalıştırmak.
Delhpi'nin hangi sürümünü kullanıyorsun Delphi7 ve 2007 kullandım, hala kullanıyorum... delphinin kendiliğinden pencereleri değiştirme özelliğine hiç şahit olmadım... Projende var bi sakatlık, xpmanifest dememdeki gaye; başka bir skin componenti kullanmadıysan böyle bir duruma delphinin kendisinin yol açmayacağıdır...
Re: Windows klasik teması ile çalıştırmak.
Ana menuden Project > Options penceresini aç.
Pencerenin solundaki listeden applications u seç ve sağdaki Enable runtime themes deki işareti kaldır.
XPManifest delphinin eski versiyonları için geçerliydi sanırım, delphi 7 ve öncesi olabilir.
Not: Yukarıdaki işlem pencere çerçevesini degiştirmez, eger pencere çerçevesi de degişsin istiyorsan. Aşagıdaki kodu ekle.
Pencerenin solundaki listeden applications u seç ve sağdaki Enable runtime themes deki işareti kaldır.
XPManifest delphinin eski versiyonları için geçerliydi sanırım, delphi 7 ve öncesi olabilir.
Not: Yukarıdaki işlem pencere çerçevesini degiştirmez, eger pencere çerçevesi de degişsin istiyorsan. Aşagıdaki kodu ekle.
Kod: Tümünü seç
uses uxtheme;
.............
setwindowhandle(form1.handle,nil,'');
.........
Re: Windows klasik teması ile çalıştırmak.
Pardon ama ben Delphi değiştiriyor diye birşey mi söyledim. Windows teması XP stilindeyken, ChildForm'a ait pencere tasarımının kötü durmasına sebep oluyor. Bunun için kullanıcının teması ne olursa olsun ben projemi Windows klasik temasıyla açmaya çalışıyorum. Böylece temalardan kaynaklanan bozulmaları engellemeye çalışıyorum.Battosai yazdı:Delhpi'nin hangi sürümünü kullanıyorsun Delphi7 ve 2007 kullandım, hala kullanıyorum... delphinin kendiliğinden pencereleri değiştirme özelliğine hiç şahit olmadım... Projende var bi sakatlık, xpmanifest dememdeki gaye; başka bir skin komponenti kullanmadıysan böyle bir duruma delphinin kendisinin yol açmayacağıdır...
Siz ısrarla anladığınızı söylüyorsunuz ancak aynı şeylerden bahsetmiyoruz.
Benim açmış olduğum konu, normalde olmaması gereken bir hatanın çözümüne yönelik değildir. Tam aksine, herhangi bir skin komponenti kullanmıyorsanız Windows'un temasının değiştirilmesi, sizin proje pencerenizin farklı boyutlarda açılmasına sebebiyet verebiliyor.
Mustafa Şimşek'in söylediği gibi skin komponentlerine de başvurmadan önce, belki kısa bir kodla bu özelliği ekleyebiliriz diye düşünmüştüm.
Yine de ilginiz için teşekkürler...
@ emin_as
Delphi 7 kullandığım için o yöntemini deneyemiyorum. "Enable runtime themes" seçeneği Delphi 7'de bulunmuyor, teşekkürler.
Re: Windows klasik teması ile çalıştırmak.
Yukarıdaki kod u yanlış yazmışım, dogrusu şöyle olacak ve delphi 7de de çalışması lazım.
SetWindowTheme procedurunu formcreate de çagırabilirsin.
Bu fonksiyon tüm pencerenin temasını klasige çeviriyor.
Kod: Tümünü seç
uses uxtheme;
....
SetWindowTheme(form1.handle,nil,'');
........
Bu fonksiyon tüm pencerenin temasını klasige çeviriyor.