Ankara
0 (312) 276 75 93
info@billgatesweb.com

Paint Yöntemi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Web Danışmanlık Hizmeti, Seo Hizmeti Al, Mobile Uygulama Yaptır, Back Link Satın Al, Blog Yazdırmak İstiyorum, Makale YAZDIRMA siteleri, Parayla makale YAZDIRMA, Seo makale fiyatları, Sayfa başı yazı yazma ücreti, İngilizce makale yazdırma, Akademik makale YAZDIRMA, Makale Fiyatları 2022, Makale yazma, Blog Yazdırma, Akademik Danışmanlık, Tercüme Danışmanlık & 0 (312) 276 75 93

Paint Yöntemi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

 Java Komut Dosyası – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatlarıv

Paint Yöntemi ve Opaklık

JComponent, AWT Container sınıfının doğrudan alt sınıfı olduğundan, paint() yöntemi aracılığıyla yeniden boyama isteklerinin resmi alıcısıdır. Tahmin edebileceğiniz gibi, JComponent bu isteği UI-temsilci nesnesinin paint() yöntemine ileterek devretmelidir.

Ancak sorumluluk burada bitmiyor. JComponent aslında üç öğeyi boyamaktan sorumludur: bileşenin kendisi, bileşenle ilişkili tüm kenarlıklar ve içerdiği tüm alt öğeler.

Emir kasıtlıdır. Swing, en son çizilen bileşenlerin her zaman üstte olduğunu varsayar; bu nedenle, alt bileşenler her zaman ebeveynlerinin üzerini boyar. JComponent, bu işlevi tamamlamak için kullandığı üç korumalı yöntem içerir:

• paintComponent()
• paintBorder()
• paintChildren()

Swing bileşenlerini boyamanın ve yeniden boyamanın içerdiği karmaşıklık nedeniyle, kendi bileşenlerinizi oluştururken her zaman bu üç yöntemi geçersiz kılmaya çalışmalısınız. Yine, hazır olduğunuz sırada superpaint()’i çağırmadığınız sürece paint()’i geçersiz kılmaya çalışmayın.

Boolean özelliği opak, her Swing nesnesinin şeffaflığını belirler. Bu özellik false olarak ayarlanırsa, bileşenin arka plan rengi şeffaftır. Bu, bileşenin işlenmesiyle dokunulmamış alanların arka plandaki grafiklerin görünmesine izin verdiği anlamına gelir.

Özellik true olarak ayarlanırsa dikdörtgen boyama bölgesi, işlenmeden önce bileşenin arka plan rengiyle tamamen doldurulur. Bu arada, hafif bileşenlerden önce şeffaflık mümkün değildi. Java 1.0’daki yerel eş nesneler, bileşenlerini her zaman düz bir dikdörtgen üzerine çizmiştir; bileşenin arkasındaki her şey silindi.

Koyu arka plan rengi olmayan opak ve şeffaf (opak olmayan) etiket arasındaki farkı gösterir. Soldaki etiket saydamdır, dolayısıyla arka plan rengi göz ardı edilir; etiketin metni, kabın görece açık renkli arka planının üstünde görünür.

JComponent, alt öğelerinden hiçbiri çakışmazsa yeniden boyama süresini optimize edebilir; bunun nedeni, yeniden boyama yöneticisinin her bir alt bileşen için gizli ve görünür alanları oluşturmadan önce hesaplamak zorunda olmamasıdır.

JSplitPane gibi bazı kapsayıcılar, alt bileşenler arasında çakışmayı imkansız kılacak şekilde tasarlanmıştır, bu nedenle bu optimizasyon iyi çalışır. JLayeredPane gibi diğer kaplar, üst üste binebilen alt bileşenler için desteğe sahiptir. JComponent, Swing’in bileşen çizimini optimize edip edemeyeceğini görmek için sık sık çağırdığı bir özellik içerir.

JComponent’te, özellik varsayılan olarak true olarak ayarlanmıştır. Bir JComponent alt sınıfında çakışma meydana gelirse, alt sınıf isOptimizedDrawingEnabled() erişimcisini geçersiz kılmalı ve false döndürmelidir. Bu, yeniden boyama yöneticisinin, kabın alt öğelerini işlerken optimize edilmiş çizim sürecini kullanmasını engeller.

JComponent, bileşenin şu anda bir döşemeyi boyama sürecinde olup olmadığını, yani diğer alt öğelerle örtüşmeyen bir alt bileşen olup olmadığını belirten bir salt okunurdur paintTile özelliği içerir. isPaintingTile() yöntemi, tüm karolar boyanana kadar true değerini döndürür.

visibleRect özelliği, bileşenin görünür dikdörtgenlerinin tüm atalarının görünür dikdörtgenleriyle kesişimini gösteren bir Rectangle’dır. Neden kavşak? Üst öğesi tarafından kırpılmış bir içerilen nesneye sahip olabileceğinizi unutmayın. Örneğin, bir iç çerçeveyi, bir kısmı üst pencerenin kırpma bölgesinin dışına düşecek şekilde taşıyabilirsiniz.

Bu nedenle, görünen kısım (fiilen ekrana çizilen kısım) yalnızca ebeveynin görünen kısmı ile çocuğun görünen kısmının kesişiminden oluşacaktır. Genellikle bu mülke erişmeniz gerekmez.

validaRoot özelliği varsayılan olarak yanlıştır. true olarak ayarlanırsa, bu bileşeni bir doğrulama ağacında kök bileşen olarak belirler. Bir kapsayıcıdaki bir bileşen her geçersiz kılındığında, kapsayıcısının da tüm alt öğeleriyle birlikte geçersiz kılındığını hatırlayın.

Bu, yalnızca isValidateRoot() öğesinin true değerini döndürdüğü bir bileşene ulaştığında duran bir geçersiz kılmanın bileşen hiyerarşisinde en yukarıya taşınmasına neden olur. Şu anda, bu özelliği true olarak ayarlayan bileşenler yalnızca JRootPane (tüm Swing üst düzey bileşenleri tarafından kullanılır), JScrollPane ve JTextField’dir.

topLevelAncestor özelliği, genellikle bir JWindow veya JApplet olan bu bileşeni içeren üst düzey pencereye bir başvuru içerir. rootPane özelliği, bu bileşen için düşük seviyeli JRootPane’i içerir; JRootPane daha ayrıntılı olarak ele alınmıştır.

Son olarak, JComponent, bir bileşenin otomatik kaydırmayı destekleyip desteklemediğini gösteren, autoscrolls adlı bir özellik içerir. Bu özellik varsayılan olarak yanlıştır. Özellik true ise, bu bileşen üzerinde bir Autoscroller nesnesi ayarlanmıştır.

Autoscroller nesnesi, hedef bileşendeki fare olaylarını izler. Fare bileşenin dışına sürüklenirse, otomatik kaydırıcı hedef bileşeni kendisini kaydırmaya zorlar. Otomatik kaydırma, genellikle JViewport gibi kaplarda kullanılır.


paint() java
Java paint example
Java Swing paint
override paint method java
Paint with java
super paint java
Java repaint
paintComponent Java


Konum, Boyut ve Hizalama

Bir Swing bileşeninin ekrandaki geçerli konumunu ve boyutunu,bounds özelliği aracılığıyla veya daha doğrusu JComponent’in konum ve boyut özellikleri aracılığıyla ayarlayabilir ve alabilirsiniz. Konum özelliği, bileşenin sınırlayıcı kutusunun sol üst köşesinin bulunduğu üst öğenin koordinat alanında bir Nokta olarak tanımlanır.

size özelliği, bileşenin mevcut genişliğini ve yüksekliğini belirten bir Dimension’dır. bounds özelliği, aynı bilgiyi veren bir Rectangle nesnesidir: hem konum hem de boyut özelliklerini bir araya getirir. Swing’in bir bileşenin boyutunu ve konumunu nasıl ölçtüğünü gösterir.

Bir Dikdörtgen sağlanırsa, getBounds() yöntemi, bileşenin geçerli boyutunu ve konumunu yansıtacak şekilde iletilen Dikdörtgendeki alanların her birini değiştirerek bileşenin bir kopyasını döndürür. Geçirilen başvuru bir null ise, yöntem yeni bir Rectangle nesnesi başlatır, değerlerini ayarlar ve onu döndürür. getBounds()’a birden çok çağrı varsa, belleği korumak için önceki yaklaşımı kullanabilirsiniz.

setBounds() yöntemi, bileşenin boyutunu ve konumunu sıfırlar. Bu yöntem ayrıca bir Rectangle nesnesi alır. Yeni ayarlar önceki ayarlardan farklıysa, bileşen taşınır, genellikle yeniden boyutlandırılır ve geçersiz kılınır. Bileşenin bir üst öğesi varsa, o da geçersiz kılınır.

Çeşitli düzen yöneticilerinin, border özelliğinde yapmaya çalıştığınız değişiklikleri geçersiz kılabileceği konusunda uyarılırsınız. Bir bileşenin setBounds() çağrısıyla geçersiz kılınması, düzen yöneticisini bileşenin sınırlarını diğer bileşenlerle ilişkili olarak yeniden hesaplamaya ve sıfırlamaya zorlayabilir; bu, bileşeni eskisi gibi aynı boyutta çözebilir.


Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır. 

1) Backlink Paketi  50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)


 

 

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

× Bize Whatsapp'tan Ulaşın