Loyihani sozlash
Odatda, men Netbeans yoki Eclipse kabi IDE dan foydalanaman va tavsiya qilaman , lekin menimcha, yangi tilni o‘rganayotganda qo‘l mehnati bilan shug‘ullanish foydali bo‘lishi mumkin, shuning uchun IDE dan foydalanganda sizdan yashiriladigan narsalarni yaxshiroq tushunasiz. Ushbu maqolada siz matn muharriri va terminal yordamida dasturlashyapsiz deb o'ylayman.Boshlashdan oldin, o'zingiz uchun loyiha katalogini yarating. Loyiha papkasida src manba fayllaringizni saqlash uchun chaqiriladigan bitta katalog yarating.
$ mkdir -p myTextEditor / src
$ cd myTextEditor
Katalogingizda chaqirilgan bo'sh fayl TextEdit.javayarating src:
$ touch src/TextEditor.java
Faylni sevimli matn muharririda oching (men siz yozmagan sevimli faylingizni nazarda tutyapman) va kodlashga tayyorlaning!Paket va import .Java ilovangiz noyob identifikatorga ega bo'lishini ta'minlash uchun siz paket nomini e'lon qilishingiz kerak. Buning odatiy formati teskari domen nomidan foydalanishdir, bu sizning domen nomingiz bo'lsa, ayniqsa oson. Agar yo'q bo'lsa, siz local yuqori daraja sifatida foydalanishingiz mumkin. Odatdagidek Java va koʻpgina tillar uchun qator nuqtali vergul bilan tugatiladi.Javac Java paketingizga nom berganingizdan so'ng, Java kompilyatoriga ( ) kodingizni yaratishda qanday kutubxonalardan foydalanish kerakligini aytishingiz kerak . Amalda, bu odatda kodlashda qo'shiladigan narsadir, chunki siz o'zingizga qanday kutubxonalar kerakligini kamdan-kam bilasiz. Biroq, oldindan aniq bo'lgan ba'zilari bor. Masalan, siz ushbu matn muharriri Swing GUI asboblar to'plamiga asoslanganligini bilasiz, shuning uchunimport javax.swing.JFrame va javax.swing.UIManager boshqa tegishli kutubxonalar berilgan.
com.example.textedit paketi ;
import javax.swing.JFileChooser ;
import javax.swing.JFrame ;
import javax.swing.JMenu ;
import javax.swing.JMenuBar ;
import javax.swing.JMenuItem ;
import javax.swing.JOptionPane ;
import javax.swing.JTextArea ;
import javax.swing.UIManager ;
import javax.swing.UnsupportedLookAndFeelException ;
import javax.swing.filechooser.FileSystemView ;
import java.awt.Component ;
Import java.awt.event.ActionEvent ;
import java.awt.event.ActionListener ;
import java.io.File ;
import java.io.FileNotFoundException ;
import java.io.FileReader ;
import java.io.FileWriter ;
import java.io.IOException ;
import java.util.Scanner ;
import java.util.logging.Level ;
import java.util.logging.Logger ;
Ushbu mashqni bajarish uchun siz o'zingizga kerak bo'lgan barcha kutubxonalar haqida oldindan ma'lumotga ega bo'lasiz. Haqiqiy hayotda, qaysi tilni afzal ko'rishingizdan qat'i nazar, siz biron bir muammoni qanday hal qilishni o'rganayotganingizda kutubxonalarni topasiz va keyin uni kodingizga import qilasiz va undan foydalanasiz. Xavotir olmang, agar siz kutubxonani qo'shishni unutib qo'ysangiz, kompilyatoringiz yoki tarjimoningiz sizni ogohlantiradi!
Asosiy oyna bu bitta oynali ilova, shuning uchun ushbu ilovaning asosiy klassi ActionListenerushlab olish menyusi hodisalari biriktirilgan JFrame hisoblanadi. Java-da, mavjud vidjet elementidan foydalansangiz, uni kodingiz bilan “kengaytirasiz”. Ushbu asosiy oynaga uchta maydon kerak bo'ladi: oynaning o'zi (JFrame misoli), fayl tanlovchining qaytariladigan qiymati ko'rsatkichi va matn muharririning o'zi (JTextArea).
umumiy yakuniy sinf TextEdit kengaytiradi JFrame amalga oshiradi ActionListener {
xususiy statik JTextArea maydoni ;
xususiy statik JFrame ramkasi ;
xususiy statik int returnValue = 0 ;
Ajablanarlisi shundaki, bu bir nechta satrlar asosiy matn muharririni amalga oshirish bo'yicha ishning taxminan 80% ni bajaradi, chunki JTextArea Java-ning matn kiritish maydonidir. Qolgan 80 ta satrning ko'pchiligi fayllarni saqlash va ochish kabi yordamchi funktsiyalarga g'amxo'rlik qiladi.Menyu yaratish.Vidjet JFrame- ning JMenuBaryuqori qismida o'tirish uchun mo'ljallangan bo'lib, siz xohlagancha ko'p yozuvlarni taqdim etadi. Java sudrab olib tashlash dasturlash tili emas, shuning uchun siz qo'shadigan har bir menyu uchun funktsiyani ham dasturlashingiz kerak. Ushbu loyihani boshqarish mumkin bo'lishi uchun men to'rtta funktsiyani taqdim etaman: yangi fayl yaratish, mavjud faylni ochish, matnni faylga saqlash va ilovani yopish.Menyu yaratish jarayoni asosan eng mashhur asboblar to'plamida bir xil. Birinchidan, siz menyu panelini o'zi yaratasiz, so'ngra yuqori darajadagi menyuni (masalan, "Fayl") yaratasiz va keyin pastki menyu bandlarini(masalan,"Yangi","Saqlash"va,boshqalar) yaratasiz. umumiy
TextEdit ( ) { ishgatushirish ( ) ; }
public void run ( ) {
frame = new JFrame ( "Matnni tahrirlash" ) ;
Do'stlaringiz bilan baham: |