Тема: Додання підказки
Допоможіть додати підказку на кнопку (редактор ) /
Підказка - при наведенні на кнопку висвічувався якийсь надпис .
Якщо комусь не тяжко може він зробити на цю кнопку підказку . Дякую .
import java.awt.* ;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
import javax.swing.*;
public class BoxDemo {
BoxDemo() {
final int RAZM_RAMK = 1, SHIR = 140, VIS = 25;
// Создание нового контейнера JFrame.
JFrame jfrm = new JFrame("box1ayout Demo");
// *** с панелью содержимого связывается
// диспетчер компоновки FlowLayout. ***
jfrm.getContentPane().setLayout(new FlowLayout());
// Установка начальных размеров фрейма,
//jfrm.setUndecorated(true);
jfrm.setSize((int)(SHIR*4.5), 140);
jfrm.setResizable( false );
// Завершение программы при закрытии окна пользователем,
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Dimension btnDim1 = new Dimension( SHIR, VIS );
Dimension btnDim2 = new Dimension( SHIR, VIS*2 );
printf("w=%d h=%d\n", btnDim2.width, btnDim2.height );
// Создание метки
ClockLabel clock = new ClockLabel();
clock.setText( "" );
clock.setFont(new java.awt.Font("Tahoma", 1, 16)); // NOI18N
clock.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
clock.setMinimumSize(btnDim1);
clock.setMaximumSize (btnDim1);
clock.setPreferredSize(btnDim1);
// Создание кнопок.
JButton jbtnPtn = new JButton( "Пятнашки" );
JButton jbtnRaspor = new JButton( "Распорядок дня" );
//jbtnPtn.setMinimumSize(btnDim1);
//jbtnPtn.setMaximumSize (btnDim1);
//jbtnRaspor.setMinimumSize(btnDim1);
//jbtnRaspor.setMaximumSize (btnDim1);
jbtnPtn.setMinimumSize(btnDim1);
jbtnPtn.setMaximumSize (btnDim1);
jbtnPtn.setPreferredSize(btnDim1);
jbtnRaspor.setMinimumSize(btnDim1);
jbtnRaspor.setMaximumSize (btnDim1);
jbtnRaspor.setPreferredSize(btnDim1);
JButton jbtnRedak = new JButton( "Редактор" );
JButton jbtnZvonok = new JButton( "Звонок" );
JButton jbtnNastr = new JButton( "Настройки" );
jbtnRedak.setMinimumSize( btnDim2 );
jbtnRedak.setMaximumSize( btnDim2 );
jbtnRedak.setPreferredSize(btnDim2);
jbtnZvonok.setMinimumSize( btnDim2 );
jbtnZvonok.setMaximumSize( btnDim2 );
jbtnZvonok.setPreferredSize(btnDim2);
jbtnNastr.setMinimumSize( btnDim2 );
jbtnNastr.setMaximumSize( btnDim2 );
jbtnNastr.setPreferredSize(btnDim2);
//jbtnZvonok.setSize( btnDim2 );
jbtnNastr.setSize( btnDim2 );
JButton jbtnCalk = new JButton( "Калькулятор" );
JButton jbtnNapom = new JButton( "Напоминание" );
JButton jbtnZapis = new JButton( "Записная книжка" );
jbtnCalk.setMinimumSize(btnDim1);
jbtnCalk.setMaximumSize (btnDim1);
jbtnCalk.setPreferredSize(btnDim1);
jbtnNapom.setMinimumSize(btnDim1);
jbtnNapom.setMaximumSize (btnDim1);
jbtnNapom.setPreferredSize(btnDim1);
jbtnZapis.setMinimumSize(btnDim1);
jbtnZapis.setMaximumSize (btnDim1);
jbtnZapis.setPreferredSize(btnDim1);
// Соадание чктырех вертикальных блоков.
Box box1 = Box.createVerticalBox();
Box box2 = Box.createVerticalBox();
Box Ьox3 = Box.createVerticalBox();
Box Ьox4 = Box.createVerticalBox();
// Соадание невидимых рамок для кнопок.
box1.setBorder(
BorderFactory.createEmptyBorder(RAZM_RAMK, RAZM_RAMK, RAZM_RAMK, RAZM_RAMK ));
box2.setBorder(
BorderFactory.createEmptyBorder(RAZM_RAMK, RAZM_RAMK, RAZM_RAMK, RAZM_RAMK));
Ьox3.setBorder(
BorderFactory.createEmptyBorder(RAZM_RAMK, RAZM_RAMK, RAZM_RAMK, RAZM_RAMK));
Ьox4.setBorder(
BorderFactory.createEmptyBorder(RAZM_RAMK, RAZM_RAMK, RAZM_RAMK, RAZM_RAMK));
// Включение компонентов в блок box1
box1.add( clock);
box1.add(Box.createRigidArea(new Dimension(0, 4)));
box1.add(jbtnPtn);
box1.add(Box.createRigidArea(new Dimension(0, 4)));
box1.add( jbtnRaspor );
// Включение компонентов в блок box2
box2.add(jbtnRedak);
box2.add(Box.createRigidArea(new Dimension(0, 4)));
box2.add( jbtnCalk );
// Включение компонентов в блок box3
Ьox3.add(jbtnZvonok);
Ьox3.add(Box.createRigidArea(new Dimension(0, 4)));
Ьox3.add( jbtnNapom );
// Включение компонентов в блок box4
Ьox4.add(jbtnNastr);
Ьox4.add(Box.createRigidArea(new Dimension(0, 4)));
Ьox4.add( jbtnZapis );
jfrm.getContentPane().add(box1);
jfrm.getContentPane().add(box2);
jfrm.getContentPane().add(Ьox3);
jfrm.getContentPane().add(Ьox4);
// Отображение фрейма.
jfrm.setVisible(true);
} // BoxDemo
public static void main(String[] args) {
// TODO Auto-generated method stub
// Фрейм создается в потоке обработки сооытии.
SwingUtilities.invokeLater(new Runnable () {
public void run() {
new BoxDemo();
}
});
} // main
public static void printf( String f, Object ... args ){
System.out.printf( f, args );
} // printf
} // class BoxDemo
class ClockLabel extends JLabel implements ActionListener {
public ClockLabel() {
//super("" + new Date());
Timer t = new Timer(1000, this);
t.start();
}
public void actionPerformed(ActionEvent ae) {
int h, m, s;
Date d = new Date();
h = d.getHours();
m = d.getMinutes();
s = d.getSeconds();
setText( ""+h+":"+m+":"+s );
}
} //