Отправляет email-рассылки с помощью сервиса Sendsay

Уроки по Java

  Все выпуски  

Уроки по Java


Информационный Канал Subscribe.Ru

Java. Рассылки сайта progs.biz
Выпуск № 31
 
Начало > Java > Основы > Урок 23

Дэвид Флэнаган Java в примерах. Справочник.
Дэвид Флэнаган. Java в примерах. Справочник
Заказать на Озоне

Подробнее


Полные версии уроков (с картинками): урок 23.

Введение в Java
Урок 23. Swing: кнопка с двумя состояниями

В библиотеке swing наряду с обычной кнопкой есть кнопка с думя состояниями - нажатом и отжатом. Она работает приблизительно как checkbox, только выглядить по-другому. Для создания такой кнопки в приложении мы используем класс JToggleButton.

Вот пример использования такой кнопки:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyFrame
    extends JFrame {
  // Переменная для кнопки.
  public JToggleButton button;
  // Конструктор.
  public MyFrame(){
    // Устанавливаем размеры и расположение.
    setLocation(400, 200);
    setSize(200, 200);
    setTitle("Title");
    // Задаем контейнер для компонентов.
    Container con = getContentPane();
    con.setLayout(new FlowLayout());

    // Создание кнопки (срузу нажатой).
    button = new JToggleButton("Press me", true);
    // Добавление кнопки к контейнеру.
    con.add(button);
    // Добавление обработчика для кнопки.
    button.addItemListener(new ItemListener(){
      public void itemStateChanged(ItemEvent e){
        // Изменение заголовка окна.
        if(button.isSelected())
        {
          setTitle("Button is selected");
        }
        else
        {
          setTitle("Button isn't selected");
        }

      }
    });
  }

  public static void main(String[] args) {
    // Создание главного окна.
    new MyFrame().setVisible(true);
  }

  public void windowClosing(WindowEvent ev) {
    System.exit(0);
  }
}

Часть нашей программы, в которой мы создаем окно, такая же, как и на прошлых уроках. Отличие только в том, что мы используем класс JToggleButton. С ним мы работаем как всегда - создаем экземпляр, вызываем конструктор (обратите внимание, что в конструкторе мы поставили второй параметр в true, что означает, что кнопка уже нажата), добавляем кнопку к контейнеру и добавляем обработчик для изменения состояния кнопки, в котором мы просто меняем заголовок нашей программы. Обратите внимание, что мы при добавлении этого обработчика указываем itemStateChanged - т. е. нас интересует не столько нажатие на кнопку, сколько изменение ее состояния.

После запуска нашей программы полуаем ожидаемый результат - кнопку с двумя состояниями (при этом в нажатом состоянии кнопка более темная).

Рассылки сайта progs.biz
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


PARKING.RU. Качественный ВИРТУАЛЬНЫЙ ХОСТИНГ на платформе Windows(r): поддержка NET, многофункциональная панель управления, аренда бизнес-приложений, сертифицированные специалисты. Управляемый ВЫДЕЛЕННЫЙ ХОСТИНГ на платформе Windows(r): производительные серверы, профессиональная поддержка, аренда ПО Microsoft(r), безопасность, гарантии. http://www.parking.ru


Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2005 сайт progs.biz
© 2002-2005 Алексеев Игорь

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.javalessons
Отписаться

В избранное