Ev Kişisel Finans JavaFX App'taki tüm Kelimeler Nedir? - mankenler

JavaFX App'taki tüm Kelimeler Nedir? - mankenler

İçindekiler:

Video: Java 21 - Metot ve Fonksiyonlar 2024

Video: Java 21 - Metot ve Fonksiyonlar 2024
Anonim

JavaFX çerçevesini kullanarak, geliştiriciler Java uygulamalarına yararlı, görsel olarak çekici bileşenleri ekler. JavaFX, 1995'deki Soyut Pencereleme Araç Seti ve 1998'de Java Swing'i ile başlayan bu tür birçok çerçeveden biridir. JavaFX'in ilk sürümü, 2008 yılına dayanıyor; ancak JavaFX, standart Java kütüphanesinde birinci sınıf vatandaş haline geldi. Java 7 2011'de.

Ayrıca 2011'de Oracle, JavaFX Sürüm 2'yi yayınladı. Bu yeni sürüm, XML belgelerini Java kodu ile birleştirdi - bir uygulamanın görünümünü XML ve bir uygulamanın Java koduyla yaptığı eylemleri bildirdi. JavaFX, FXML adlı kendi XML ağızçasını kullanır.

XML eXtended İşaretleme Dili anlamına gelir ve JavaFX muhtemelen Java ile "özel bir EFF olan şeyleri içerir" - 1 -> (Kısaltmaların kökenlerini önemsiyorsanız Bu makale, kendi zevkinize göre FXML

EFFtct eXtended Markup Language veya EFF-ECTS İşaretleme Dili anlamına gelir. basit bir JavaFX programında bulabilirsiniz. ("Bazı adlara" yapılan bu başvurunun "yalnızca JavaFX dünyasına ait isimler" anlamına geldiğini unutmayın - bu, diğer pencere ortamlarında görünen TextField ve Button gibi isimleri içermez ve bu, Java. lang ve main gibi vanilya Java teknolojilerine ait isimleri içerir.)

Liste 1'de FXML kodu, Liste 2'de Java kodu bulunur. Bu iki listeyi tek bir uygulamanın parçası olarak çalıştırdığınızda, metninizdeki harfleri büyük harfle yazan bir program elde edersiniz. (Bu noktada, "Metni büyük harf kullanıma açan bir uygulama? Önemli bir anlaşma" demeniz gerekebilir. Burada uygun bir yanıt "BİR BÜYÜK BİR ÇALIŞMAYA KABUL EDİLEN BİR İYİLEŞTİRME!")

Listeleme 1: Kök. fxml F ile

<< AnchorPane prefWidth = "130.0" prefWidth = "198.0" xmlns = " // javafx. Com / javafx / 8" xmlns: fx = " // javafx. com / fxml / 1" fx: denetleyici = "uygulama Ana"> << çocuklar >> fx: id = "textField " layoutX =" 25. 0 " layoutY =" 26. 0" /> mnemonicParsing =" false " onAction =" # onClick "  2'ye ayrılıyor: Ana. java F ile

paket uygulaması; import javafx. uygulama. Uygulama; import javafx. Etkinlik. ActionEvent; import javafx. fxml. FXML; import javafx. fxml. FXMLLoader; import javafx. faliyet alani, sahne. Veli; import javafx. faliyet alani, sahne. Faliyet alani, sahne; import javafx.faliyet alani, sahne. kontrol. Metin alanı; import javafx. sahne. Sahne; public class (

(args);} @Override public void başlangıç ​​ ( Aşama primaryStage) {try { Ana kök = FXMLLoader'ı deneyin. yükle (getClass (). getResource ("Kök fxml")); Sahne sahne = yeni Sahne (kök, 400, 400); faliyet alani, sahne. getStylesheets (). add (getClass (). getResource ("uygulama. css"). toExternalForm ()); primaryStage. setScene (sahne) ; primaryStage. show () ;} catch (İstisna e) {e. printStackTrace ();}} @FXML özel TextField textField; @FXML protected void onClick (ActionEvent olayı) {textField. FXML kodu Her XML belgesinde olduğu gibi, Liste 1'deki belge kök unsuruna sahiptir - tek bir eleman başlar belgenin başında ve belgenin sonuna kadar biter. Liste 1'de, kök öğe ile başlar ve

ile biter.

Kök unsur olarak AnchorPane AnchorPane (veya daha resmen bir javafx sahne düzeni, AnchorPane), demirlemenin yapılabileceği bir yerdir. Büyük, boş bir alana bir düğme veya metin alanı koymaya çalışmayı düşünün. Bir AnchorPane olmadan bu bileşenler alanın içinde nazikçe yüzüyorlar. Bir AnchorPane ile, metin alanının sol kenarını, AnchorPane'in sol kenarından tam 25 0 piksel yapabilirsiniz. (Liste 1'deki TextField öğesinin layoutX özniteliğine bakın.) Ayrıca, AnchorPane ile, metin alanının üst kenarının AnchorPane'in tam kenarından 26.0 piksel olmasını sağlayabilirsiniz. (Liste 1'deki TextField öğesinin layoutY özniteliğine bakın.) Aynı, AnchorPane'in içine yerleştirdiğiniz bir düğme veya başka herhangi bir bileşen için de geçerlidir.


Bir FXML belgesinin kök öğesinin içinde, bir fx: controller özniteliği, Java'ya uygulamanla ilişkili eylemleri gerçekleştiren kodu sınıfı olan


denetleyicisi

sınıfının adını söyler. Liste 1'de denetleyici sınıfının adı uygulamadır. Ana. Ve ne tesadüf! Liste 2'deki sınıfın adı Main'dir ve application adlı bir pakette!

FXML kodunu bir anahat olarak düşünüyorsanız, alt başlıklar ve alt başlıklar alt başlıklar içeren bir başlık vardır. Liste 1'de, birincil başlık AnchorPane'dir. AnchorPane'in sadece alt başlığı çocuklar. Ancak çocukların kendilerine ait iki alt başlığı vardır; yani TextField ve Button.

fx: id özniteliği TextField öğesinin bir fx: id özniteliği vardır. Bu özellik, bu bileşeni bazı Java kodlarında nasıl bulacağınızı bildirir. Başka bir deyişle, "Uygulamadaki bu widget'e bakmak" diyor. Ana Java kodu, textField adını kullanın. "(Daha fazla ayrıntı istiyorsanız, Liste 2'deki kod tartışmasına göz atın.)

Bir bileşeni tanımlamak için açıklayıcı bir sözcük kullanmak zorunda değilsiniz.

Sürekli olarak woofinflang kelimesini kullandığınız sürece (Java kodunuzda woofinflang sözcüğüne atıfta bulunarak) her şey sorunsuzca geçecektir. Tabii textField, textField2 ve phoneNumberField gibi isimler woofinflang gibi isimlerden daha bilgilendirici. Yani mümkünse, woofinflangs'tan uzak durun.

The mnemonicParsing özniteliği


Liste 1'de, Button öğesinin içinde mnemonicParsing özniteliği false değerine sahiptir. Bu yanlış değer, Java için düğme için kısayol tuşu ayarlamayı rahatsız etmemesini söyler. Değer doğruysa, düğmenin metin özniteliğinin değerine bir alt çizgi ekleyebilirsiniz:

text = "_ Büyük harfle"

Böylece kullanıcı fareyi düğmenin üzerine getirmek zorunda kalmaz. Alt çizgi C harfinden hemen önce geldiğinden, Alt + C tuşlarına basmak düğmeyi tıklama ile aynı etkiye sahip olacaktır.

OnAction özniteliği

Bir düğmenin onAction özniteliği, kullanıcı düğmeyi tıklattığında yürütülecek yöntemin adını Java'ya bildirir. Liste 1'de, onAction özelliğinin değeri #onClick'tir. Bu, kullanıcı düğmeyi tıklattığında Java'ya denetleyici sınıfının onClick yöntemini çağırmasını söyler. Neyse ki uygulama. Liste 2'deki ana sınıf bir onClick yöntemine sahiptir.

Liste 1'de, onAction değeri #onClick'tir. Ancak, Liste 2'de, karşılık gelen yöntem adı karma simgesi olmadan onClick'tir. Bir düğmenin onAction özniteliğinde hash sembolü (#), yöntem adının bir parçası değildir. Fakat bu, FXML belgenizdeki karma sembolünü atlayabileceğiniz anlamına gelmez. Karma simgesini atlarsanız, programı çalıştırmayı denediğinizde çirkin bir hata mesajı görürsünüz.

Java kodu

Liste 2'deki sınıf, Uygulama sınıfını genişletir. Bir Uygulama, tam olarak ne olduğunu düşündüğünüz şeydir - kullanıcının başlatabileceği bir grup kod; "Belge oluşturma", "Web'de Surf" veya "Bir arkadaş bul" gibi açıkça belirtilen amacı olan bir program. "

Çalıştırma ve başlatma

Bir JavaFX programını çalıştırmak için en az iki yol vardır. Bir yöntem normal bir Java uygulaması olarak çalıştırmaktır. Örneğin, Eclipse'de Farklı Çalıştır -> Java Uygulaması'nı seçersiniz.

Bunu yaptığınızda, bilgisayarınız Java sanal makinesini başlatır ve bu da programın temel yöntemini çağırır. Liste 2'de, ana yöntem yalnızca bir deyimi yürütür: başlatma yöntemine bir çağrı. Başlatma yöntemini çağırmak uygulamanın JavaFX tekerleklerini harekete geçirir ayarlar.

Alternatif olarak, önceden paketlenmiş JavaFX kodunu çalıştırabilirsiniz. Hazır paketlenmiş bir paket, bilgisayarın bir uygulamayı çalıştırmak için ihtiyaç duyduğu her şeyi içerir. Bu "herşey" kullanıcının bilgisayarında bir Java sanal makinesini kontrol etmek için kod ve bilgisayarta bir Java sanal makine bulunmaması durumunda bir Java sanal makine indirmek için kod içerir. Bir JavaFX uygulamasını bu şekilde hazırladığınızda, programınızın ana bir yöntemi olması gerekmez. Sistem, programın başlatma yöntemini otomatik olarak çağırır.

A. kavanoz dosyası a gibi. Zip dosyası dışında her biri. jar dosyası, Java programlarına özgü belirli öğeler içerir. Birine koyabileceğiniz şeylerden biri.jar dosyası hazır paketlenmiş bir JavaFX uygulamasıdır.

Başlatma yöntemini çağırdığınızda, Java, uygulamanızın başlatma ve başlatma yöntemlerine çağrılar yaparak yanıt verir. Ana sınıfınız, Uygulama sınıfının varsayılan init yöntemini devraldığından, Liste 2'de bir init yöntemi görmüyorsunuz. (Varsayılan init yöntemi hiçbir şey yapmadığı için bu sorun değildir.)

Diğer şeylerin içindeki şeyler

Liste 2'deki başlatma yöntemi bir Üst öğe oluşturur. Ana, bir Sahnenin başlangıç ​​noktası ve Sahne Sahne Alanı'nda görülür. İşte biraz daha detay:

Bir Sahne, normalde "pencere" dediğiniz şey. "

Bu, kullanıcının ekranında dikdörtgen bir çalışma alanıdır.

Bir Sahne (aynı zamanda

sahne grafiği

olarak bilinir), bir bileşen ağacıdır.

  • Örneğin, Bir Sahne iki bölme içerebilir. En soldaki bölme iki küçük bölme içerir - bir üst bölme ve bir alt bölme. Üst panelde bir düğme bulunur; alt bölme bir metin alanı içerir. En sağ bölme resim ve resim için bir etiket içerebilir.

    Bu makalenin başvurusunda, bileşen ağaçları oldukça basittir. Sahne, sırayla bir TextField ve bir Düğme içeren bir AnchorPane içerir. (Listeye bakınız.)

  • Bir Veli, bir Sahnenin başlangıç ​​noktasıdır. Önceki mermide görünen şeye rağmen, Bir Sahne, iki bölüme sahip olmak ya da iki şey yaşayarak hayatına başlayamaz. Her Sahne tek bir bileşenle başlar ve bu bileşen Parent türünde olmalıdır. Bu makalenin başvurusunda, Sahne, bir TextField ve bir Düğme içeren bir AnchorPane içeren bir Ebeveyn içerir. Liste 2'deki start yöntemi, bir Ana öğeyi, Liste 1'de açıklanan bileşenlere bağlar; bir Sahne'yi Anale ilişkilendirir ve Sahne Alanı'nı Sahne Alanı ile ilişkilendirir. Son olarak, kod Sahne Alanı sınıfının show yöntemine yapılan çağrı ile Sahne Alanı'nı görüntüler.

    Web sayfası tasarımını biliyorsanız, sahnenin görünümünü tanımlamak için basamaklı stil sayfalarını (CSS) kullanabilirsiniz. Liste 2'de sahne çağrısı. getStyleSheets (). Ekle sahnenizle bir stil sayfası ilişkilendirir. Eğer senin. css dosyası (bu makalenin örneğinde olduğu gibi) boş, daha sonra sahne çağrılıyor. getStyleSheets (). add'ın bir etkisi yoktur.

    Harekete Geçme

  • Liste 1'de

    satırı, kullanıcının ekrandaki bileşenlerden birine başvurmanın bir yolunu sunar. Liste 2'de, satır

özel TextField textField;, bu textField bileşenini Java kodunuzda bir nesne haline getirir.

Yeniden listeleme 1'de düğmenin onAction özelliği, kullanıcı düğmeyi tıklattığında Java'ya denetleyici sınıfının onClick yöntemini çağırmasını söyler. Liste 2'de, onClick yöntemi textField bileşeninin içindeki metinle kandırılır. (Daha açık belirtmek gerekirse, onClick yöntemi metin alanındaki metni alır, metni büyük harf yapar ve büyük harfli metni tekrar textField'e koyar.) Kullanıcı, düğmeyi tıklattığında programın ne yapacağını bilir.

Her zaman textField gibi kelimeleri kullanmak zorunda kalmazsınız. Adın sürekli olarak kullanıldığı müddetçe bershmlug olarak adlandırabilirsiniz.FXML dosyasında


yazarsınız ve Java kodunda,

@FXML private TextField

bershmlug

yazarsınız; @FXML protected void onClick (ActionEvent olayı) {

bershmlug


. setText (

bershmlug .getText (). toUpperCase ());} Liste 2'deki @FXML ek açıklamalar erişim kontrolü içindir. Bir JavaFX programı çalıştırdığınızda, bir yükleyici FXML kodunuzu kavrayıp Java koduna dönüştürür. (FXML kodunu programınıza yükler.) İşini yapmak için yükleyici textField ve Listing 2'deki onClick gibi adlara erişmelidir. Fakat unutmayın: Bu yükleyici kendi programınızın parçası değildir. Yükleyici Java standart kitaplıklarına aittir. TextField ve onClick adlarına erişimi nasıl kontrol edebilirsiniz? Java'nın sıradan erişim düzenleyicileri (public, protected, private ve default) size küçük bir seçenek bırakmaz. Bu değiştiricilerle, dış program tarafından erişime izin vermenin tek yolu, textField ve public olarak bildirmektir. Fakat birçok geliştirici için, kamu erişiminin ayrımsız kullanımı gauche

olarak kabul edilir. Genel erişime sahip her sınıfı textField ve onClick'e erişebilir. JavaFX geliştiricisinin istediği şey bu değil.

Bu sorunu çözmek için, @FXML açıklaması özel bir erişim türünü sağlar. Liste 2'de, textField değişkeni özel, dolayısıyla normalde, Main dışındaki hiçbir sınıf textField değişkenine erişemez. Ancak @FXML ek açıklaması yükleyiciye özel ayrıcalık tanır. Diğer kodların aksine, yükleyici kodu textField değişkenine referans verebilir. Programınızı derlediğinizde ve çalıştırdığınızda, Java @FXML ek açıklamasını görür ve yükleyiciye erişim sağlamak için özel hileler yapar. Aynı şey onClick yöntemi için de geçerlidir. @FXML ek açıklaması olmadan, protected onClick yöntemi sadece kendi uygulama paketinizdeki sınıflardan ve Ana sınıfınızın alt sınıflarından çağrılabilir. Yükleyici bu iki şeyden de değildir. Dolayısıyla, yükleyici tarafından onClick yönteminize özel erişim izni vermek için onClick yöntem bildiriminizi @FXML ile önsözünüz.

JavaFX App'taki tüm Kelimeler Nedir? - mankenler

Editörün Seçimi

Menopoz Dummies Hile Sayfası (UK Edition) - mankenler

Menopoz Dummies Hile Sayfası (UK Edition) - mankenler

Menopoz, üreme aşamasının sonunu işaret ediyor ve birçok kadın için fiziksel, duygusal ve zihinsel değişimin önemli bir dönemi. Fakat nesiller boyu her yaştan kadınlar, neyi bekleyeceğini bilmeden menstozya körü körüne dolaştı. Burada bazı temel bilgileri bulabilirsiniz.

Perimenopoz: Menstruasyondan Menopozya Geçişi Kolaylaştırmak - AYRICALIKLIĞI

Perimenopoz: Menstruasyondan Menopozya Geçişi Kolaylaştırmak - AYRICALIKLIĞI

Menstruasyon ve menopoz, iyi bilinen biyolojik Bir kadının hayatındaki kilometre taşları. Popüler düşüncenin aksine, menopoz, bir kadının "değişim geçirdiği" aylar ya da yıllar dönemi değildir. "Bu periyoda perimenopoz adı verilir. Menopoz, gerçek bir tarihe dengez. Özellikle, bir kadınun son adet döneminin 12 aylık yıldönümü. ...

Menopoz Üç Aşaması -

Menopoz Üç Aşaması -

Menapoz öncesi - "Menopozdan önce. "Menopozun üç evresinden ilki, perimenopoz, sonra menopoz ve son olarak menopoz sonrası: Perimenopoz: Kelimenin tam anlamıyla" menopoz çevresinde "(Premenopozal kadınlar menopoz semptomları göstermezler; normal ve düzenli dönemler normaldir ve hormon seviyeleri sabittir.) . "Yıllar önce ..."

Editörün Seçimi

Nikon D7100'ünüzde Temel Kayıt Ayarlarını Yapma - ilgilendiğiniz zaman mankenler

Nikon D7100'ünüzde Temel Kayıt Ayarlarını Yapma - ilgilendiğiniz zaman mankenler

Videolarınızın Nikon D7100'ün varsayılan ayarlarına göre nasıl daha fazla kontrol sahibi olduğuna karar vermek için aşağıdaki temel ayarları inceleyerek başlayın: Çerçeve Boyutu / Kare Hızı ve Film Kalitesi: Bu ayarlar birlikte videonuzun yanı sıra film dosyasının kalitesini de belirler boyut. Mikrofon: Bu ayar, sesin nasıl ayarlanacağını belirler ...

Nikon D5300'ünüzde Oynatma Zamanlaması Seçeneklerini Ayarlama - varsayılan olarak mankenler

Nikon D5300'ünüzde Oynatma Zamanlaması Seçeneklerini Ayarlama - varsayılan olarak mankenler

, Nikon D5300 resim verisini hafıza kartına kaydetmeyi bitirdikten hemen sonra fotoğrafınızı 4 saniye boyunca görüntüler. Bu özelliğe Görüntü İncelemesi adı verilir. Daha uzun süre göz atmak için kamerayı oynatma moduna ayarlamak için Oynatma düğmesine basın. Fotoğrafınız 1 dakika süreyle görünür ve bundan sonra ...

Nikon D5500'ünüz üzerindeki Kontrol Şeridi Üzerinden Ayarları Yapma - mankenler

Nikon D5500'ünüz üzerindeki Kontrol Şeridi Üzerinden Ayarları Yapma - mankenler

Bilgiler Nikon D5500'nuzdaki ekran, bu ayarların en kritik bazılarına hızlı erişim sağlayan bir kontrol şeridi sunar. Vizör fotoğrafçılığı için nasıl çalıştığını (yani, Live View modunda çekim yapmadığınızda): Info (Bilgi) ekranını Info (Bilgi) butonuna basarak veya deklanşöre basarak görüntüleyin ...

Editörün Seçimi

Kaydet / Farklı Kaydet Kutusu'nu Photoshop Elements 10 - aptallar

Kaydet / Farklı Kaydet Kutusu'nu Photoshop Elements 10 - aptallar

'Da Kaydet Kaydet (veya Farklı Kaydet) iletişim kutusu, kaydedilecek dosyayla ilgili seçim yaptığınız tanıdık bir yerdir. Farklı Kaydet ile, resminizin bir kopyasını kaydedebilir veya değiştirilmiş bir kopyasını kaydedebilir ve orijinal dosyayı koruyabilirsiniz. Kaydet (veya Farklı Kaydet) iletişim kutusunu kullanmak için ...

Windows Organizer'da bir TWAIN Eklentisi Kullanarak Photoshop Elements'e Photos tara - yamanlar

Windows Organizer'da bir TWAIN Eklentisi Kullanarak Photoshop Elements'e Photos tara - yamanlar

, Dosya → Photoshop ve Videolar Al → Tarayıcıdan seçim yaparak fotoğrafları Photoshop Elements içine tarayabilirsiniz. Çoğu durumda, tarayıcınız Windows Organizer tarafından otomatik olarak tanınır. Bununla birlikte, Mac'te ve bazı durumlarda Windows'ta tarayıcınız kullanılamıyor. Tarayıcınızı göremiyorsanız veya .........