|
17 / 17 / 1
Регистрация: 28.03.2013
Сообщений: 80
|
|
Организационные трудности с написанием игры30.03.2013, 20:14. Показов 1491. Ответов 9
Метки нет (Все метки)
Есть задание написать игру для просты пусть будут крестики нолики на поле 5х4. Игра до 4-х подряд. UI в JAVA только начал изучать и в связи с отсутствием опыта есть вопросы:
1. Поля которые будут заполнять игроки (крестиками и ноликами), я планирую делать через кнопки. Т.е. кнопка имеет вид квадрата с рисунком нейтральной позиции, при нажатии на нее рисунок меняется на крестик или нолик. Первый вопрос нормально ли использовать для этого кнопки или можно реализовать через какие-то другие объекты JAVA которые будут себя вести так же как описано? 2. Второй вопрос вытекает из первого. Как сделать так, что бы при изменении размеров окна, кнопки меняли свой размер пропорционально. Т. е. если изначально кнопки были квадратными, то при изменении размеров окна они оставались всегда квадратными. Я так понимаю надо кнопки загнать в GridBagLayout и там как-то прописать что бы размер ячейки Layouta был всегда квадратным. Но вот как это сделать? И если в GridLayout кол-во строк и столбцов регулируется просто передачей параметров (5,4), то как оно выставляется в GridBagLayout? 3. Третий вопрос тоже вытекает из первого. Как сделать так, что бы при изменении размеров окна, рисунок на кнопке независимо от размеров кнопки масштабировался и занимал все пространство кнопки, а не просто оставался одного размера? Собственно это все вопросы, логику игры я запрограммирую без проблем, но вот с отображением бьюсь уже 3-й день. Заранее скажу, что в гугле гуглил и тех. статьи читал. Заранее благодарен за любую помощь.
0
|
|
| 30.03.2013, 20:14 | |
|
Ответы с готовыми решениями:
9
Помогите пожалуйста с написанием кода для текстового квеста игры
Проблемы с написанием игры "Шахматы" |
|
|
|
| 30.03.2013, 20:44 | |
|
если вы планируете рисунки то вам лучше зафиксировать размеры окна (так как чем больше их масштабировать тем размытее они будут), если вам нужна динамическая форма, то рисунки на кнопках должны рисоваться векторно и занимать выделеный процент кнопки динамически базируясь на её размерах.
чтобы всё всегда было квадратным повесте листенер на изменения размера окна и если меняют ширину, изменяйте пропорционально и длину и наоборот ну и вырубите максимизацию, так вы получите то что вы хотите
1
|
|
|
17 / 17 / 1
Регистрация: 28.03.2013
Сообщений: 80
|
|||
| 30.03.2013, 21:16 [ТС] | |||
|
На счет листнера на изменение размера окна, скорее всего так и сделаю. Единственный вопрос, какой метод возвращает текущий размер окна?
0
|
|||
|
17 / 17 / 1
Регистрация: 28.03.2013
Сообщений: 80
|
|
| 02.04.2013, 23:04 [ТС] | |
|
Большое спасибо за предыдущие ответы, я разобрался и у меня получилось реализовать графику игры. Теперь стоит вопрос такого плана:
1. Перед тем как собственно играть, нужно ввести имена игроков, а после этого уже выводить ту графику которую я писал. Как я себе это представляю, после запуска исполняемого файла у меня появляется окно в котором создан фрейм, а в фрейме размещены: Надпись "Введите имена игроков" и ниже 2 JTextField. И еще ниже кнопка "Начать игру!". Так вот, по нажатию кнопки мне нужно загнать значения TextFieldов в переменные, убрать фрейм с вводом игроков и вывести фрейм с полем для игры(тот самый фрейм с кнопочками). Как реализуется смена этих фреймов? Я очень плохо себе это представляю. Возможно есть какой-то пример?
0
|
|
|
17 / 17 / 1
Регистрация: 28.03.2013
Сообщений: 80
|
||||||
| 03.04.2013, 20:40 [ТС] | ||||||
|
А, то есть все просто
![]() Добавлено через 18 часов 43 минуты В результате я накидал такую менюшку:
0
|
||||||
|
17 / 17 / 1
Регистрация: 28.03.2013
Сообщений: 80
|
|
| 03.04.2013, 21:33 [ТС] | |
|
Это ясно, вопрос собственно в том как мне обратиться к объекту в обработчике событий? Просто написать L.setVisible(false); в обработчике нельзя.
0
|
|
|
|
||||||
| 04.04.2013, 02:05 | ||||||
0
|
||||||
| 04.04.2013, 02:05 | |
|
Помогаю со студенческими работами здесь
10
Организационные доки Чем можно заменить организационные юниты? помогите с написанием Сборка ПК "для себя" - игры, игры, игры! Киев, бюджет 8300 грн с монитором. Помогите с написанием формул. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|