Sunday, September 1, 2019

Aplikasi Running Text Java Netbeans

Cara Membuat Aplikasi Running Text Java

Running text adalah teks yang berjalan atau bergerak baik vertikal maupun horizontal. jika dalam web bisa dengan mudah membuatnya dengan marque, nah bagaimana jika ingin memasangnya di dalam aplikasi program java  ?

Di aplikasi java , JLabel tidak memiliki method untuk membuat running text, akan tetapi hal ini bisa dilakukan dengan cara menggeser karakter - karakter teks pada JLabel secara periodik namun cepat sehingga teks seolah -olah bergerak. untuk lebih jelasnya langsung saja ke contoh program sederhananya :

1. Buatlah sebuah project Java Aplication dengan cara klik File > New Project > Java > Java Aplication.

2. Ubah nama project menjadi RunningTextApp.


3. Sekarang buatlah sebuah class baru dengan cara klik kanan pada project anda >  New > Java Class

4. Berinama class tersebut RunningTextActionListener. kemudian masukan script berikut :

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package runningtextapp;
 
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JLabel;
 
/**
 *
 * @author Jin Toples
 */
public class RunningTextActionListener implements ActionListener {
    JLabel label;
     
    public RunningTextActionListener(JLabel label){
        this.label = label;
    }
     
    public void actionPerformed(ActionEvent e){
        String oldText = label.getText();
        String newText = oldText.substring(1)+oldText.substring(0, 1);
        label.setText(newText);
    }
}

Penjelasan :

RunningTextActionListener adlah listener yang akan menggerakan teks, Teks pada JLabel digeser dengan cara karakter terdepan di pindahkan ke akhir teks. dengan cara ini, teks seolah -olah berjalan dari kanan ke kiri.
5. Sekarang buatlah sebuah class baru dengan cara klik kanan pada project anda >  New > Java Class

6. Berinama class tersebut RunningTextMouseAdapter. kemudian masukan script berikut :

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package runningtextapp;
 
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.Timer;
 
/**
 *
 * @author Jin Toples
 */
public class RunningTextMouseAdapter extends MouseAdapter {
    Timer timer;
     
    public RunningTextMouseAdapter(Timer timer){
        this.timer = timer;
    }
     
    public void mouseEntered(MouseEvent e){
        timer.stop();
    }
     
   public void mouseExited(MouseEvent e){
       timer.start();
   }
}

Penjelasan :

RunningTextMouseAdapter adalah MouseListener yang akan mendeteksi posisi Mouse, Listener RunningTextActionListener yang dibuat sebelumnya akan di aktifkan dengan timer. Ketika mouse berada di atas teks JLabel maka timer akan berhenti sehingga teks juga berhenti dan ketika mouse tidak ada di atas teks JLabel maka timer akan berjalan dan teks akan bergerak.

7. Sekarang buatlah sebuah class baru dengan cara klik kanan pada project anda >  New > Java Class

8. Berinama class tersebut FormUtama. kemudian masukan script berikut :

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package runningtextapp;
 
import java.awt.BorderLayout;
import javax.swing.Timer;
import javax.swing.JFrame;
import javax.swing.JLabel;
 
/**
 *
 * @author Jin Toples
 */
public class FormUtama extends JFrame {
    JLabel label;
    Timer timer;
     
    public FormUtama(){
        super("Running Text");
        initComponents();
        enableRunningText();
    }
 
    private void initComponents() {
        label = new JLabel(" >> Ini adalah teks yang berjalan kerna dia sedang ingin berjalan :p <<");
        getContentPane().add(label, BorderLayout.CENTER);
        pack();
        setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
 
    private void enableRunningText() {
        timer = new Timer(100, new RunningTextActionListener(label));
        label.addMouseListener(new RunningTextMouseAdapter(timer));
        timer.start();
    }
}

Penjelasan :

Lihat pada method enableRunningText(). RunningtextActionListener yang menggerakan teks akan diaktifkan dengan Timer. Timer ini diatur nilainya 100 yang artinya teks pada JLabel akan bergerak setiap 100ms atau 0.1 detik.

9. Sekarang buka file RunningTextApp.java. kemudian ketikan script berikut :

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package runningtextapp;
 
/**
 *
 * @author Jin Toples
 */
public class RunningTextApp {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        new FormUtama();
    }
}

Sekarang label teks akan berjalan ketika mouse tidak ada di atasnya sedangkan ketika mouse ada di atasnya maka ia akan berhenti, untuk mencobanya dapat jalannya program dengan cara tekan F6 pada keyboard atau klik Run > Run Poject. atau klik kanan pada file RunningTextApp klin Run File. 

Thursday, August 29, 2019

Animasi Mobil Berjalan Dengan Netbeans

1. Buka Netbean
2. Buat new project, pilih java lalu next.
3. Setelah itu akan muncul seperti gambar di bawah ini.
lalu Project Name kasih nama sesuai dengan keinginan, kali ini menggunakan JavaApplication18, lalu klik finish.
4. Lalu bikin class baru disini saya memakai nama class Animasi.
5. lalu untuk source codenya :

package JavaApplication18;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.Timer;

@SuppressWarnings("serial")
public class Animasi extends JPanel{
    private static final int D_W = 400;
    private static final int D_H = 400;

    List cars;
    @SuppressWarnings({ "unchecked", "rawtypes" })
    public Animasi() {
        setBackground(new Color(153, 102, 51));
        setLayout(null);
         
        cars = new ArrayList();
        cars.add(new Car(100, 300));
        cars.add(new Car(200, 100));

        Timer timer = new Timer(50, new ActionListener(){
            public void actionPerformed(ActionEvent e) {
                for (Car car : cars) {
                    car.move();
                    repaint();
                }
            }
        });
        timer.start();
    }

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        for (Car car : cars) {
            car.drawCar(g);
        }
    }

    @Override
    public Dimension getPreferredSize() {
        return new Dimension(D_W, D_H);
    }

    public class Car {
        private static final int INCREMENT = 5;
        int x, y;
        public Car(int x, int y) {
            this.x = x;
            this.y = y;
        }
        public void drawCar(Graphics g) {
            g.setColor(Color.RED);
            g.fillRect(x, y, 100, 30);
            g.setColor(Color.BLACK); // body
            g.fillOval(x + 15, y + 20, 20, 20); // wheel
            g.fillOval(x + 60, y + 20, 20, 20); // wheel
            g.fillRect(x + 15, y - 20, 60, 20); // top
        }

        public void move() {
            if (x == D_W) {
                x = 0;
            } else {
                x += INCREMENT;
            }
        }
    }
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JFrame frame = new JFrame();
                frame.getContentPane().add(new Animasi());
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setTitle("Mobil");
                frame.pack();
                frame.setLocationRelativeTo(null);
                frame.setVisible(true);
            }
        });
    }
}
6. Setelah itu tekan SHIFT+F6 untuk menjalankan.
7. Dan akhirnya akan jadi seperti gambar di bawah ini

Memunculkan Simbol & Emoji Pada OS Mac

  Memunculkan Simbol & Emoji  1. Buka aplikasi Pages / Notes pada Macbook. 2. Klik pada Menubar Edit --> Pilih Emoji and Symbols a...