Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2011, 22:47   #1
gvilon
Пользователь
 
Регистрация: 06.10.2011
Сообщений: 10
Печаль Тип обьекта

Класс Person extends JPanel

Нужно создать коллекцию размером 6 из объектов JPanel, Person.
Объекты заносить в коллекцию в случайной последовательностью.

Код:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

import java.util.*;

public class MainClass {
	static ArrayList list = new ArrayList();

	static JPanel generator() {
		switch((int)(Math.random() * 2)) {
			default:
			case 0: return new JPanel();
			case 1: return new Person();
		}
	}
	
	public static void main(String[] args) {
		JFrame frame = new JFrame("L №4");
		JPanel panel = new JPanel(new GridLayout(2,3));
		
		for(int i = 0; i < 6; i++) {
			list.add(generator());
			panel.add((JPanel)list.get(i));
		}
		
		frame.getContentPane().add(panel, BorderLayout.CENTER);

		frame.setSize(750, 500);
		frame.setVisible(true);
		
	}
}
Код:
import java.awt.Graphics;
import javax.swing.*;

public class Person extends JPanel {

	public void paint(Graphics g) {
		g.drawOval(100, 30, 35, 35);
		g.drawRect(105, 65, 25, 50);
		g.drawRect(70, 65, 35, 7);
		g.drawRect(130, 65, 35, 7);
		g.drawRect(105, 115, 7, 35);
		g.drawRect(123, 115, 7, 35);
	}
}
Надо, чтоб при нажатии на любой из объектов коллекции выдавало сообщение про тип обьекта или JPanel или Student.

Буду благодарен если поможете.
gvilon вне форума Ответить с цитированием
Старый 22.10.2011, 19:31   #2
dox07
Пользователь
 
Регистрация: 16.02.2010
Сообщений: 26
По умолчанию

Приветствую. Я думаю что в классы Student и Panel надо добавлять обработку события нажатия мыши. Код примерный напишу.
Код:
Panel panel = new Student(); 
panel.addMouseListener(new CustomListener());

 public class CustomListener implements MouseListener {
	 
	          public void mouseClicked(MouseEvent e) {
	             //выдает тип объекта
	          }
	
	     }
Код примерный, т.е. чисто идея.
dox07 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
две задачи на тип INTEGER и тип CHAR inspiron13 Помощь студентам 5 04.01.2011 00:17
две задачи на тип INTEGER и тип CHAR inspiron13 Паскаль, Turbo Pascal, PascalABC.NET 3 04.01.2011 00:08
Различия между const <Тип> и <Тип> RIO Общие вопросы C/C++ 3 03.12.2010 15:28
Первести тип real в тип strings sokla Помощь студентам 5 07.01.2010 18:04
Перевести тип String в тип PChar (Delphi 7) ScorpioN_T Помощь студентам 2 28.10.2008 22:13