[Swing Design] Membuat Bubble Smart Launcher Android di Java Desktop dengan Round Button

javaAndroid

Smart Launcher adalah aplikasi launcher untuk android yang memiliki ciri khas bubble menu di home screennya. Karena terinspirasi dari menu yang unik tersebut, saya mencoba membuat user interface Smart Launcher di Java Swing / Desktop dengan menggunakan class RoundButton. Sebagai gambaran, berikut ini tampilan Smart Launcher Android

Screenshot_2015-04-27-06-47-29

Berikut ini adalah code RoundButton, yang digunakan untuk membuat tampilan bulat pada komponen JButton.

import java.awt.geom.*;
import javax.swing.*;
import java.awt.*;

@SuppressWarnings("serial")
public class modifButton extends JButton {
	public modifButton(String lbl) {
		super(lbl);
		Dimension dim = getPreferredSize();
		dim.width = dim.height = Math.max(dim.width, dim.height);
		setPreferredSize(dim);
		setContentAreaFilled(false);
	}

	protected void paintComponent(Graphics graph) {
		if (getModel().isArmed()) {
			graph.setColor(Color.lightGray);
		} else {
			graph.setColor(getBackground());
		}
		graph.fillOval(0, 0, getSize().width - 1, getSize().height - 1);
		super.paintComponent(graph);
	}

	protected void paintBorder(Graphics graph) {
		graph.setColor(getForeground());
		graph.drawOval(0, 0, getSize().width - 1, getSize().height - 1);
	}

	Shape s;

	public boolean contains(int x, int y) {
		if (s == null || !s.getBounds().equals(getBounds())) {
			s = new Ellipse2D.Float(0, 0, getWidth(), getHeight());
		}
		return s.contains(x, y);
	}
}

Program lengkapnya dapat anda download disini

download

Download : SmartRoundButton

Seperti ini tampilan program Java Desktopnya

Screenshot from 2015-04-27 06_38_14

Screenshot from 2015-04-27 06_38_27

Screenshot from 2015-04-27 06_37_53

Selamat mencoba dan semoga bermanfaat🙂

Untuk pertanyaan, saran dan kritik, silahkan ditulis di kolom komentar

2 thoughts on “[Swing Design] Membuat Bubble Smart Launcher Android di Java Desktop dengan Round Button

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s