Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ComboBox, прошлый getSelectItem(); 
:(
    Опции темы
XClan
Дата 15.12.2004, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 14.10.2003
Где: Планета Сириус

Репутация: нет
Всего: 3



Возникла очередная проблема с комбобоксом
Все это происходит при каком либо сообытий на комбобоксе ( ActionPerformed )
мне надо как то при выборе комбобокса узнать какой был прежним.. чтобы сравнить изминения... А то у меня начинает сравнивать только тогда когда я уже выбрал ! И соответсвенно просит сохранить именно на тот выбранный элемент!
А мне нужно как бы перед выполнением getSelectItem выбранного объекта сделать сравнение в изминениях в случае чего , можно было сохранить!

Как это сделать??


--------------------
rm -rf /bin/laden
PM MAIL WWW   Вверх
igon
Дата 15.12.2004, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: 7
Всего: 21



Заведи переменную lastModified, которая определяется вне обработчика событий, но видна в нем (глобальная переменная). В нее записывай информацию о getSelectedItem в КОНЦЕ процедуры обработки события. При следующем событии на комбобоксе используй ее для сравнения, сохранения и т.д.


--------------------
Хотите поговорить об этом?
PM   Вверх
Oracle
Дата 15.12.2004, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 96
Регистрация: 26.11.2004

Репутация: 1
Всего: 3



все верно, переменная нужна, но постарайся не делать ее глобальной.

Это сообщение отредактировал(а) Oracle - 15.12.2004, 23:01
PM MAIL   Вверх
Domestic Cat
Дата 15.12.2004, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Цитата(Oracle @ 15.12.2004, 13:18)
все верно, переменная нужно, но постарайся не делать ее глобальной.


Давайте постараемся все-таки употреблять правильные термины smile


--------------------

PM   Вверх
Oracle
Дата 15.12.2004, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 96
Регистрация: 26.11.2004

Репутация: 1
Всего: 3



Цитата
постарайся не делать ее глобальной

Цитата
правильные термины

статической? smile

Это сообщение отредактировал(а) Oracle - 15.12.2004, 23:02
PM MAIL   Вверх
Domestic Cat
Дата 15.12.2004, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



статический != глобальный


--------------------

PM   Вверх
Oracle
Дата 16.12.2004, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 96
Регистрация: 26.11.2004

Репутация: 1
Всего: 3



Цитата
статический != глобальный

Согласен, но в данном разговоре, еще с того, когда написал igon
Цитата
но видна в нем (глобальная переменная).

Я понял так, что имелась ввиду именно статическая переменная.(а может Public? - открытая)
Поэтому я написал далее:
Цитата
- постарайся не делать ее глобальной
- правильные термины
- статической?

Насколько я знаю в Java(именно в ней, не трогая других языков):
глобальная переменная класса = поле класса.
а просто термин глобальная переменная применяется по отношению к статическим переменным.

Буду рад услышать твою точку зрения.

Это сообщение отредактировал(а) Oracle - 16.12.2004, 00:06
PM MAIL   Вверх
Domestic Cat
Дата 16.12.2004, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Цитата(Oracle @ 15.12.2004, 15:01)
а просто термин глобальная переменная применяется по отношению к статическим переменным.


Глобальных переменных в Java нет, в сипипишниом смысле. Потому лучше вообще слово "глобальный" не употрблять smile

Это сообщение отредактировал(а) Domestic Cat - 16.12.2004, 00:12


--------------------

PM   Вверх
igon
Дата 16.12.2004, 04:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: 7
Всего: 21



Цитата
Domestic Cat (топик 37156)
Ну вы даете, может вам еще и все ";" нужны smile

Ну вы даете, может вам еще и "" везде нужны ? smile
ОК, исправляюсь
Цитата
видна в нем ("глобальная" переменная).

Подразумевалось:
1. Статическая переменная
2. Обработчик событий "сидит" в классе, реализующем интерфейс ActionListener и имеющем эту "глобальную" переменную, не обязательно public.
3. Файл на диске, имя которого известно обработчику smile
4. И т.д.,и т.п.
И все это надо было расписывать? smile


--------------------
Хотите поговорить об этом?
PM   Вверх
Domestic Cat
Дата 16.12.2004, 04:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Зачем, кстати, статическая? Если будет создано 2 таких комбобокса, то будут проблемы.
Достаточно сказать что это поле класса - любое поле и так видно внутри класса.


--------------------

PM   Вверх
Oracle
Дата 16.12.2004, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 96
Регистрация: 26.11.2004

Репутация: 1
Всего: 3



Domestic Cat
Цитата
все верно, переменная нужна, но постарайся не делать ее глобальной.

Я и имел ввиду, что там не нужно делать статическую переменную.А понял я
igonа правильно, под "глобальной" он имел ввиду именно статическую переменную(я и продолжил дальше использовать термин "глобальный").
похоже уже smile smile

Это сообщение отредактировал(а) Oracle - 16.12.2004, 16:16
PM MAIL   Вверх
igon
Дата 16.12.2004, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: 7
Всего: 21



Oracle, откуда это видно, что
Цитата
под "глобальной" он (т.е. я smile ) имел ввиду именно статическую
переменную
?
Я же перечислил (не менее 3 вариантов), как можно организовать эту переменную, и статическая - это лишь ОДИН вариант

Кстати, дополнение к варианту 2 - класс не обязан реализовывать интерфейс ActionListener. Обработчик на основе анонимного внутреннего класса тоже будет "видеть" поля класса.


--------------------
Хотите поговорить об этом?
PM   Вверх
Oracle
Дата 16.12.2004, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 96
Регистрация: 26.11.2004

Репутация: 1
Всего: 3



igon
А какую еще переменную(как не статическую) можно подразумевать в Java под термином "глобальной"?Некоторые люди,хоть довольно редко, как я говорил раньше, употребляют термин "глобальный" как статический(обычно это используют, для определения понятия static, как переменная, которая доступна везде), к ним даже некоторые разработчики библиотек Java относятся.
Цитата
Я же перечислил (не менее 3 вариантов), как можно организовать эту переменную, и статическая - это лишь ОДИН вариант

Кстати, дополнение к варианту 2 - класс не обязан реализовывать интерфейс ActionListener. Обработчик на основе анонимного внутреннего класса тоже будет "видеть" поля класса.

А никто и не спорит... smile

Это сообщение отредактировал(а) Oracle - 16.12.2004, 19:45
PM MAIL   Вверх
Domestic Cat
Дата 16.12.2004, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Цитата
для определения понятия static, как переменная, которая доступна везде)


private или protected static не будеt доступнa везде, потому использовать термин "глобальная переменная" как синоним неверно.
Добавлено @ 19:52
М
 
Давайте вернемся к теме, иначе я буду вынужден закрыть топик



--------------------

PM   Вверх
igon
Дата 16.12.2004, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: 7
Всего: 21



Domestic Cat, а разве тема еще не исчерпана? smile
Мы вроде согласились, что нужна некая переменная, которая НЕ ДОЛЖНА БЫТЬ ЛОКАЛЬНОЙ в пределах обработчика события на комбобоксе.
А уж как именно она будет реализована и как именно классифицирована - дело вкуса инициатора топика.
Развернувшаяся дискуссия имеет своим предметом, в общем-то, второстепенные детали в контексте вопроса, посвящена толкованию терминологических нюансов и действительно может быть завершена вполне безболезненно (или выделена в отдельный топик? smile).



--------------------
Хотите поговорить об этом?
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.3854 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.