2011-04-06 32 views
7

Öncelikle konuyla ilgili tüm makaleleri okudum, ama yine de soruma cevap vermediğimi belirtmek istiyorum. Benim sorum başkalarından biraz farklı.
Bugün bir Skype penceresine bakıyorum. Başlık çubuğunda fazladan bir düğme var. Ancak bu düğme yerel sistem düğmesi olarak işlev görür. Sadece parlayan, bakmak, pencereden dışarı yayılır. Bu yüzden makul bir sorum var. Aşağıdaki resme göre, başlık çubuğuna fazladan düğme eklemek için standart bir yol var. Ancak subj'deki tüm cevaplar, WM_NCPAINT etkinliğinin ve ekstra tuşun manuel olarak çizilmesine yol açar. Bu yaklaşım iştir ama resimdeki gibi güzel bir parlaklık veremezdi.
Pencerenin başlık çubuğuna standartlaştırılmış düğme eklemenin yolu bilen var mı? Şimdiden teşekkürler! enter image description herePencere başlık çubuğuna nasıl ek bir düğme eklenir, böylece standart olarak çalışır?

+0

Bütün başlık çubuğu düğme Özel bir – anishMarokey

+0

@anishMarokey olabileceğini düşünüyorum . Evet, aynı varsayım var, ama nasıl parıldayacaksınız? –

cevap

3

Vista ve Windows 7'de Desktop Window Manager adlı yeni bir şey var. Bu, "Aero cam" pencere başlık çubuklarını çizmek ve parlama efektlerini yapmak için kullanılır. WM_NCPAINT işleyicileri uygulamadaki eski Windows XP yaklaşımı bu yeni sistemle çalışmaz, bu nedenle yepyeni bir API kullanmanız gerekir.

Eminim, sorduğun şeyi yapmakla ilgili bazı makaleler gördüm, ama şu anda onları bulamıyorum. Size biraz ipucu verebilir Bazı sayfalar şunlardır:

+0

Üçüncü bağlantı puanınız bu soruya işaret ediyor, bu yüzden çok yardımcı olmayacak sanırım;) –

+0

Evet, üçüncü link bu sorunda ölü döngüyü getiriyor :) Cevap için teşekkürler, tüm bağlantıları dikkatlice inceleyeceğim –

+1

Üzgünüz, Farklı bir sayfadan kopyaladım, ancak çeviride URL'yi kaybetmiş olmalıyım. (Ben :-) –

1


Evet, bu olabilir (ve kuşkusuz olduğunu) WM_NCPAINT çengel ve buna karşılık olarak onların düğmesine boyama yapılır yapabilirsiniz. "Parıltılı", sadece uygun renk ve gölgeleme (ve bazı "parıltı" göstergesine yakın tuşa basmak için alfa harmanının biraz yapılması) meselesidir.

+0

Vay! Cevabınız için teşekkürler Jerry! Bana böyle şeylerin gölgelenmesi hakkında daha fazla şey öğrenebilir miyim? –

+0

@Anton: Sanırım, bunun gibi çoğu küçük şey Photoshop gibi bir şeyle elle yapılır. Topikal alternatif, düğme için eğimli cephenin bir 3B modelini oluşturmak, onu DirectX veya OpenGL gibi bir şeyle oluşturmak ve bunu oluşturmak ve düğmenizi çizmek için bir bitmap olarak kullanmak için kullanmak olacaktır. –

İlgili konular