Tutorial Java: Membuat Aplikasi dengan Full Screen Exclusive Mode
Tutorial Information
| Program | Java |
| Version | JDK 6+ |
| Difficulty | Pemula |
| Estimated Time | 30 Menit |
| Download | Click this link |
Sebuah aplikasi bisa ditampilkan ke layar monitor dalam Full Screen Mode ataupun Windowed Mode. Tergantung dari tujuan penggunaan aplikasi, Anda dapat memilih mode tampilan yang sesuai dengan kebutuhan. Sebagai contoh untuk aplikasi game dengan spesifikasi cukup tinggi, akan lebih baik jika menggunakan mode tampilan Full Screen.
Proses penggambaran tampilan ke layar pada Windowed Mode dikendalikan oleh Sistem Operasi, sedangkan pada Full Screen Mode tampilan ke layar seluruhnya diatur oleh aplikasi tersebut. Ketika berada dalam Full Screen Mode, Anda dapat mengatur Display Mode sehingga tentunya Anda dapat menyamakan bit depth dari seluruh tampilan. Selain itu juga dengan hanya satu tampilan aplikasi di layar, tentunya hal ini akan mengakibatkan meningkatnya performa dari aplikasi.
Jika Full Screen Mode tidak tersupport, pemaksaan menggunakan Full Screen Mode hanya akan menurunkan performance aplikasi.Ide dasar dari program yang akan Anda buat adalah membuat sebuah objek dari class yang diturunkan dari JFrame dan menampilkannya ke layar dengan Full Screen Mode. Kemudian menambahkan pada frame tersebut pilihan-pilihan untuk mengganti display mode yang tersupport oleh monitor.
- Langkah pertama, buatlah sebuah class yang di extend dari class
JFrame. Class ini memiliki konstruktor yang menerima sebuah objek dari
class GraphicsDevice. Pada frame ini hanya terdapat sebuah tombol exit
yang digunakan untuk keluar dari Full Screen mode.
123456789101112131415161718192021222324252627282930
publicclassFullScreenFrameextendsJFrameimplementsActionListener {GraphicsDevice device;Container mainPanel;JButton btnExit;publicFullScreenFrame(GraphicsDevice device) {this.device = device;btnExit =newJButton("CLICK HERE TO EXIT");btnExit.addActionListener(this);//Pengaturan tampilanmainPanel = getContentPane();mainPanel.setLayout(newBorderLayout());JPanel panel =newJPanel(newFlowLayout(FlowLayout.CENTER));panel.add(btnExit);mainPanel.add(panel, BorderLayout.CENTER);//Deklarasi awal framesetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}@OverridepublicvoidactionPerformed(ActionEvent e) {if(e.getSource() == btnExit) {System.exit(0);}}} - Kemudian tambahkan code dibawah pada deklarasi awal frame pada
konstruktor. Kode ini bertujuan untuk membuat frame tidak dapat di
resize dan tidak didekorasi (Sebuah aplikasi full screen tidak
memerlukan dekorasi frame). Untuk resizeable sangatlah penting karena
resize pada aplikasi full screen dapat berakibat fatal.
12
setResizable(false);setUndecorated(true); - Sekarang untuk membuat aplikasi menjadi Full Screen Mode tambahkan method berikut pada class di atas.
123
publicvoidstartFullScreen() {device.setFullScreenWindow(this);} - Kemudian setelah class tersebut telah selesai, Anda uji coba dengan
menjalankan method main berikut (boleh diletakkan dimanapun, untuk
mudahnya Anda sertakan saja ke class di atas).
1234567
publicstaticvoidmain(String[] args) {GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();GraphicsDevice device = env.getDefaultScreenDevice();FullScreenFrame f =newFullScreenFrame(device);f.startFullScreen();} - Compile dan jalankan. Berikut adalah tampilan yang seharusnya didapat.
- Sekarang Anda dapat membuat class baru serupa dengan class diatas,
namun memiliki list akan semua display mode yang disupport monitor untuk
mencoba pergantian display mode. Silahkan Anda buat kerangka dasarnya
seperti kode di bawah ini.
123456789101112131415161718
publicclassDisplayModeChangeextendsJFrameimplementsListSelectionListener ,ActionListener {// letak objectpublicDisplayModeChange(GraphicsDevice device) {this.device = device;defaultMode = device.getDisplayMode();}publicvoidstart() {device.setFullScreenWindow(this);}@OverridepublicvoidvalueChanged(ListSelectionEvent e) {}@OverridepublicvoidactionPerformed(ActionEvent e) {}} - Kemudian tambahkan sebuah method dengan kode sebagai berikut. Method
ini berguna untuk membentuk tampilan pada aplikasi seperti label yang
berisi mengenai informasi Display Mode saat ini, list akan Display Mode
yang didukung oleh monitor, serta tombol-tombol untuk mengganti Display
Mode dan tombol untuk keluar dari aplikasi.
Method ini memang cukup panjang, namun yang perlu Anda perhatikan hanyalah kode berikut yang berfungsi untuk mendapatkan semua Display Mode yang didukung.123456789101112131415161718
publicvoidinitComponent() {modes = device.getDisplayModes();listData =newString[modes.length];for(inti =0; i < modes.length; i++) {// kode list data}list =newJList(listData);list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);list.setVisibleRowCount(6);list.addListSelectionListener(this);JScrollPane scrollList =newJScrollPane(list);// kode lainsetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setResizable(false);setUndecorated(true);}
1modes = device.getDisplayModes(); - Langkah berikutnya adalah memberi aksi pada tombol-tombol yang telah
Anda buat. Hal ini bisa dilakukan dengan menambahkan kode berikut pada
method actionPerformed yang sebelumnya telah Anda buat namun masih
kosong.
Dari kode di atas yang perlu Anda perhatikan hanyalah kode berikut yang berguna untuk mengubah Display Mode menjadi mode yang Anda inginkan.12345678910111213141516
if(e.getSource() == btnChange) {device.setDisplayMode(modes[list.getSelectedIndex()]);DisplayMode mode = device.getDisplayMode();// panggil method set text}if(e.getSource() == btnDefault) {device.setDisplayMode(defaultMode);DisplayMode mode = device.getDisplayMode();// panggil method set text}if(e.getSource() == btnExit) {device.setDisplayMode(defaultMode);System.exit(0);}
1device.setDisplayMode(modes[list.getSelectedIndex()]); - Sekarang setelah class tersebut telah selesai, yang perlu Anda
lakukan hanyalah menambah sebuah method main untuk mencoba class
tersebut. Method main ini bisa langsung ditambahkan pada class tersebut.
Berikut kodenya.
1234567
publicstaticvoidmain(String[] args) {GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();GraphicsDevice device = env.getDefaultScreenDevice();DisplayModeChange f =newDisplayModeChange(device);f.initComponent();f.start();} - Class sudah bisa dicompile dan dijalankan. Tampilan yang didapat seperti di gambar ini.

0 komentar:
Posting Komentar