![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
cooler |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Продолжаю написание игры футбольный менеджер.
Теперь на Delphi. Т.к почти еще ничего не знаю надеюсь на вашу помощь. Для начала: как сделать выбор 1 пункта из нескольких? (при выборе в зависимости от пункта переменной присваивается значение) Это могут быть "радио"- кнопки или выбор из списка. Не могу разобраться как связать фому с unit'ом. Набросайте пожалуйста как сделать так: см.рис Вобщем пока проблемы интерфейса. Ещё: Как, например, задать background ? Если есть можно дать ссылку на материал, где это описано. Эскизы прикрепленных изображений ![]() |
cooler |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Поразбирался. Понял ,что задал глупые вопросы...
У меня несколько ListBox'ов. В одном- запасные,во втором - вратарь,в третьем защита... Сделал так: выделяю в одном игрока, во втором, нажимаю кнопку и они заменяются. Как сделать чтобы больше 2х не выделялось игроков? И как связать эти ListBox'ы с массивом моих игроков? Чтобы массивы менялись вместе со списками. Неужели каждый раз переприсваивать? |
cooler |
![]()
Сообщение
#3
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
А как выводить значения переменных или текст что-то типа writeln?
Неужели трудно ответить. Я же не пишу: "Сделайте- ка мне игру" Просто элементарные вопросы,а мне в помощь Может тему нужно перенести в написание игр??? |
мисс_граффити |
![]()
Сообщение
#4
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Не трудно
![]() По порядку... С первой порцией, насколько я поняла, уже разобрался. Цитата У меня несколько ListBox'ов. Мне кажется, здесь лучше использовать ComboBox: Цитата Виджет ComboBox - это выпадающий список элеметов, из которого может быть выбран только один. что автоматически решает вопрос с Цитата Как сделать чтобы больше 2х не выделялось игроков? Цитата И как связать эти ListBox'ы с массивом моих игроков? Чтобы массивы менялись вместе со списками. Неужели каждый раз переприсваивать? Если честно, не совсем поняла происходящее... Кто в массиве? Кто в списках? Цитата А как выводить значения переменных или текст что-то типа writeln? Сначала надо кинуть компонент, КУДА будешь выводить текст. Например, Label А потом написать: Label1.Caption:='текст'; Либо, если это типа сообщения о неправильном действии, можно так: ShowMessage('текст'); -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#5
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Насчет ComboBox:
Понимаешь в чем дело, У меня (на рис.) Слева запасные, а справа разделенный по группам основной состав. Я сделал так: выделяешь одного и второго, нажимаешь заменить и они меняются. Все бы хорошо, да только может выделиться больше двух, т.к разделены на группы по позициям. Про массив: Я в listbox элементы из массива игроков записываю. А как после изменения сохранить состав? Может есть другие варианты?? Эскизы прикрепленных изображений ![]() |
мисс_граффити |
![]()
Сообщение
#6
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
теперь стало понятнее )))
можно сделать так: несколько радиобаттонов (типа "заменить вратаря", "заменить кто-там-еще-бывает") и в зависимости от них - доступность выбора в листбоксе. то есть (сорри, проверить наличие свойств не могу - делфи не установлена, пишу по памяти) типа такого: ListBox1.Enable:=RadioButton1.Checked; а вообще - лучше всего будет, если прикрепишь проект в архиве (без ехе-шника) - разговор будет предметным. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#7
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Проект выложил, если это уже можно называть проектом.
Как сделать чтобы какая-нибудь процедура выполнялась сразу после открытия формы? (А то я сейчас все к кнопкам привязываю) Потом, как обновлять значения radiobutton.checked ? Цикл сделать? Пока какое поле с самого начало выбрано, то и доступно. Обязательно нужно заставочку. Как посоветуешь сделать? Появляется форма, на ней рисунок (хотя бы небольшой) и название. Через несколько секунд она закрывается и появляется следующая. Как лучше рисунок там организовать? P.S. Не в тему: Парадокс. Хотел сделать, чтобы одна форма грузилась, нажимаешь кнопку, она закрывается, открывается другая. В новом проекте сделал ч/з св-во visible - работает. Вставляю эту вещь в свой проект - грузятся обе формы. Прикрепленные файлы ![]() |
мисс_граффити |
![]()
Сообщение
#8
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Цитата Как сделать чтобы какая-нибудь процедура выполнялась сразу после открытия формы? (А то я сейчас все к кнопкам привязываю) привесить на открытие формы )) сам на свой вопрос ответил единственное - я не очень поняла, речь о создании формы ("первом" открытии) или открытии после сворачивания? от этого зависит, какое событие выбрать. Цитата Потом, как обновлять значения radiobutton.checked ? Цикл сделать? Что значит "обновлять"? Если пользователь изменил, менять доступность листбоксов? Опять же - на обработчик события... Цитата Обязательно нужно заставочку. Как посоветуешь сделать? Появляется форма, на ней рисунок (хотя бы небольшой) и название. Через несколько секунд она закрывается и появляется следующая. Как лучше рисунок там организовать? именно несколько форм? можно бросить компонент под рисунок (paintbox или image) и через несколько секунд делать его невидимым, например. Цитата Парадокс. Хотел сделать, чтобы одна форма грузилась, нажимаешь кнопку, она закрывается, открывается другая. В новом проекте сделал ч/з св-во visible - работает. Вставляю эту вещь в свой проект - грузятся обе формы. через методы close/show не пробовал? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
striker |
![]()
Сообщение
#9
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 86 Пол: Мужской Репутация: ![]() ![]() ![]() |
Я такую же прогу делал года 2 назад, но все было проще гораздо.
Сообщение отредактировано: striker - 15.04.2008 20:08 |
cooler |
![]()
Сообщение
#10
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Всё, большое спасибо с тем что было по-тихоньку разобрался
massev: array[1..5] of string = ('забил гол', В этой процедуре я конечно нагородил... Идея такая: пока случайно выбираются события матча из массива massev и выводятся в Листбокс. Нужно сделать чтобы события в него выводились с некоторой задержкой, и чтобы матч можно было остановить, что-то сделать с составом и возобновить, не теряя предыдущих событий. Если пользователь сделал замену игрока, соответственно выводим сообщение об этом в Листбокс. P.S Как лучше выводить таблицу? Да, обновленная версия, если нужно: Сообщение отредактировано: cooler - 15.04.2008 20:16 Прикрепленные файлы ![]() |
cooler |
![]()
Сообщение
#11
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Сорри за такой код в процедуре.
Сейчас сам сел спустя 2 недели, половину не понял. Подскажите идейку как реализовать выше перечисленное. Нужно таймер, наверное, поставить и останавливать его, потом запускать? |
Better Kind |
![]()
Сообщение
#12
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 52 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Гораздо проще реализовать записями.
-------------------- With best regards, Better Kind
|
cooler |
![]()
Сообщение
#13
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
А подробнее?
![]() Приведи примерчик |
cooler |
![]()
Сообщение
#14
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Помогите пожалуйста реализовать след. вещь.
У меня симулируется в текстовом режиме матч. (выводятся события матча из строкового массива в listbox) Нужно чтобы они выводились с определенной задержкой. (sleep наверное не туда ставлю) Пользователь должен нажать на кнопку команда, где между массивами игроков (запасных и основных) он произведет замены. НУЖНо чтобы после того как он вернется к матчу он продолжился, т.е опять с задержкой выводились события матча, и в этот же listbox вывелись те элементы массивов, которые поменял пользователь. Т.е, например Иванов->Петров Здесь наверное событийная обработка. Как её реализовать? Т.к у меня происходят изменения в команде сложно, то можно в примере просто 2 массива реализовать, а их потом под своё адаптирую. Прикладываю "легкую" и оч.демо версию. Чтобы симулировать матч - кнопка "след. игра" Код massev: array[1..5] of string = ('забил гол', 'травма','желтая карточка','замена','красная карточка'); procedure TSimForm.Button2Click(Sender: TObject); var i,sobytie:byte; begin Listbox2.Items.Clear; for i:=1 to 7 do begin sobytie:=random(5); if sobytie=0 then sobytie:=1; Listbox2.Items.Add(massev[sobytie]); sleep(100); end; end; Если я опять загнул и ничего не понять - пишите ![]() Эскизы прикрепленных изображений ![]() Прикрепленные файлы ![]() |
cooler |
![]()
Сообщение
#15
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Пожалуйста, помогите. Как это сделать?
|
cooler |
![]()
Сообщение
#16
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Почему?...Почему никто ничего не пишет.
Напишите хоть почему не пишите |
мисс_граффити |
![]()
Сообщение
#17
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
ты хочешь передавать управление?
то есть идет матч - пользователь, не останавливая его, меняет игроков - и матч продолжается? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#18
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Идет матч, пользователь нажимает на кнопку "пауза" /"стоп"(в матче), матч останавливается,
он заменяет игроков и возобновляет. Хотя можно не останавливая, только матч будет идти не долго и пока пользователь прокопается в заменах игра кончится ![]() Мне хоть как-нибудь пока P.S Спасибо за отклик |
мисс_граффити |
![]()
Сообщение
#19
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
я бы тогда сделала так примерно:
var massev: array[1..5] of string; -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#20
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо.
Я почти также уже сделал ![]() Сам догадался. У меня дальше будут вопросы - обращусь. Спасибо большое |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2024 14:33 |