Glasspane merupakan salah satu keajaiban di swing, karena effect yang ditimbulakan seperti kaca mungkin di package AWT sulit untuk membuat glass seperti ini, andai ada juga mungkin tidak sebaik di swing.
Contoh GlassPane sederhana.
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GridBagLayout;
import javax.swing.JPanel;
/**
*
* @author manjava
*/
public class GlassPane extends JPanel{
private Color color_trans;
public GlassPane(){
setOpaque(false);
color_trans = new Color(255,255,getBackground().getBlue(),20);
this.setBorder(null);
setBackground(Color.BLACK);
}
public GlassPane(GridBagLayout gb){
setLayout(gb);
setOpaque(false);
color_trans = new Color(255,255,getBackground().getBlue(),20);
}
@Override
public void setBackground(Color c){
super.setBackground(c);
color_trans = new Color(getBackground().getRed(),getBackground().getGreen()
,getBackground().getBlue(),20);
repaint();
}
@Override
protected void paintComponent(Graphics g){
super.paintComponent(g);
Graphics2D gd = (Graphics2D) g.create();
gd.setColor(color_trans);
gd.fillRect(0, 0, this.getWidth(), this.getHeight());
gd.dispose();
}
}
Sabtu, 16 Oktober 2010
Jumat, 15 Oktober 2010
AnimationFrame
Animasi memang sangat diperlukan pada sebuah aplikasi sekarang ini, karena effectnya yang unik dapat memikat pengguna dan tidak cepat bosen dengan model aplikasinya.
untuk itu sangat disarankan dalam pembuatan aplikasi apapun diharapkan ada effect yang dapat melengkapi simulasi bekerjanya suatu aplikasi.
Contoh AnimasiFrame yang bergerak dari atas sampai ketengah.
pertama buat timer untuk menggerakan frame
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package latihan;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
/**
*
* @author manjava
*/
public class Animator implements ActionListener{
ActionFX fx;
int delay=0;
boolean bol;
public Animator(ActionFX fx){
this.fx=fx;
}
public void actionPerformed(ActionEvent e) {
delay++;
int s=10+delay;
int h=10+s;
fx.point.y=+h;
fx.frame.setLocation(fx.point.x,fx.point.y);
if(delay==300){
fx.timer.stop();
}
}
}
kedua buat suatu aksi yang nantinya akan menghubungkan
kinerja dari timer ke frame utama.
package latihan;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
import javax.swing.JFrame;
import javax.swing.Timer;
/**
*
* @author manjava
*/
public class ActionFX{
Timer timer;
JFrame frame;
Point point;
public ActionFX(){
Animator anm = new Animator(this);
timer = new Timer(000,anm);
timer.addActionListener(anm);
}
public void setAnimation(JFrame frame,Point p){
this.frame=frame;
this.point=p;
}
public void run(){
timer.start();
}
}
ketiga buat frame utama, disini saya buat frame sederhana dan tidak kompleks.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package latihan;
import java.awt.Graphics;
import java.awt.Point;
import javax.swing.JFrame;
public class FXman extends JFrame{
ActionFX fx;
public FXman(){
setLocationRelativeTo(null);
fx = new ActionFX();
Point po = getLocation();
setLocation(new Point(po.x,0));
fx.setAnimation(this, po);
setDefaultCloseOperation(3);
setSize(300,300);
setVisible(true);
fx.run();
}
public static void main(String[]args){
new FXman();
}
}
untuk itu sangat disarankan dalam pembuatan aplikasi apapun diharapkan ada effect yang dapat melengkapi simulasi bekerjanya suatu aplikasi.
Contoh AnimasiFrame yang bergerak dari atas sampai ketengah.
pertama buat timer untuk menggerakan frame
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package latihan;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
/**
*
* @author manjava
*/
public class Animator implements ActionListener{
ActionFX fx;
int delay=0;
boolean bol;
public Animator(ActionFX fx){
this.fx=fx;
}
public void actionPerformed(ActionEvent e) {
delay++;
int s=10+delay;
int h=10+s;
fx.point.y=+h;
fx.frame.setLocation(fx.point.x,fx.point.y);
if(delay==300){
fx.timer.stop();
}
}
}
kedua buat suatu aksi yang nantinya akan menghubungkan
kinerja dari timer ke frame utama.
package latihan;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
import javax.swing.JFrame;
import javax.swing.Timer;
/**
*
* @author manjava
*/
public class ActionFX{
Timer timer;
JFrame frame;
Point point;
public ActionFX(){
Animator anm = new Animator(this);
timer = new Timer(000,anm);
timer.addActionListener(anm);
}
public void setAnimation(JFrame frame,Point p){
this.frame=frame;
this.point=p;
}
public void run(){
timer.start();
}
}
ketiga buat frame utama, disini saya buat frame sederhana dan tidak kompleks.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package latihan;
import java.awt.Graphics;
import java.awt.Point;
import javax.swing.JFrame;
public class FXman extends JFrame{
ActionFX fx;
public FXman(){
setLocationRelativeTo(null);
fx = new ActionFX();
Point po = getLocation();
setLocation(new Point(po.x,0));
fx.setAnimation(this, po);
setDefaultCloseOperation(3);
setSize(300,300);
setVisible(true);
fx.run();
}
public static void main(String[]args){
new FXman();
}
}
Minggu, 01 Agustus 2010
Bell-Java Aplication
Inspirasi ini tercipta ketika pada saat gw ngeles salah satu client gw, di situ gw di sajikan aplikasi bel sekolah, ga tau programnya pake apaan, yang jelas setelah melihat aplikasi tersebut gw tertarik untuk membuatnya, dan akhirnya alhamdullillah selesai juga project ke-2 gw,
mungkin untuk project pertama gw msih belum posting yaitu tentang aplikasi perpustakaan, karena saya masih ragu untuk mempostingnya, :)
tp insya.....suatu saaat gw pasti postingin, doain ya...biar aplikasinya lebih bermutu. :)
download project gw di sini
mungkin untuk project pertama gw msih belum posting yaitu tentang aplikasi perpustakaan, karena saya masih ragu untuk mempostingnya, :)
tp insya.....suatu saaat gw pasti postingin, doain ya...biar aplikasinya lebih bermutu. :)
download project gw di sini
Langganan:
Postingan (Atom)