|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
||||||
Как сравнить цвет, который выбран пользователем с тем, который был задан ранее случайным образом?09.11.2014, 13:51. Показов 2087. Ответов 12
Метки нет (Все метки)
Здравствуйте! Прошу подсказать, помочь
Задача в том, чтобы на экране появлялись шарики разных цветов, через некоторое время они все закрашивались в белый цвет. А затем пользователь должен по ним щелкать и искать цвет,который был рандомно задан. Вопрос: можно ли без помощи таймера, сделать так , чтобы шарики горели пять секунд, а затем закрашивались в белый и самое главное, как сделать так , чтобы нажимая на кнопку "проверить" появлялось сообщение об угаданных шариках( то есть как сравнить те цвета ,которые были, с теми которые выбрал пользователь) Спасибо!
0
|
||||||
| 09.11.2014, 13:51 | |
|
Ответы с готовыми решениями:
12
Проверка, совпадает ли ранее скаченный файл с тем, который на сервере
|
|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
||||||
| 09.11.2014, 19:35 [ТС] | ||||||
|
Здравствуйте.
Есть разноцветные элементы, которые "горят" 5 сек, а потом становятся белыми. И суть в том, что нужно клацать по ним и выбрать цвет,который был ,когда они "горели" .А потом проверить совпадают эти цвета или нет . Так вот есть проблема, а именно Как сделать так, чтобы можно было сравнить цвета элементов,который выбрал пользователей с теми,которые были изначально. Спасибо за помощь
0
|
||||||
|
place status here
3186 / 2220 / 640
Регистрация: 20.07.2013
Сообщений: 6,013
|
|
| 09.11.2014, 23:57 | |
|
Изначально сохраняешь значения цветов. После того, как они "побелели", предлагаешь пользователю при клике на "элемент" выбрать (допустим, из ComboBox) некоторое значение цвета. Сравниваешь на совпадение с ранее сохраненным[и] значением[ями] (после всех тестов [по нажатию кнопки] или после каждого) и делаешь вывод "молодец, держи пирожок" или "сегодня на компьютере играть не будешь".
Не пойму, чем таймер не устраивает. Или ты не умеешь его готовить?
0
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 10.11.2014, 14:25 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
|
| 10.11.2014, 18:51 [ТС] | |
|
Спасибо огромное! Только я новичок и не совсем понимаю как можно сохранить эти изначальные цвета.
А также сравнивать эти значения нужно в кнопке проверки? Добавлено через 21 минуту Подскажите пожалуйста, а как именно этот компонент(ColorDialog) применить именно к моим элементам, а то везде в примерах приводится как применить его для цвета самой формы. Спасибо
0
|
|
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
||||||
| 10.11.2014, 21:01 | ||||||
Сообщение было отмечено ler как решение
Решение
Ну, общий смысл такой: в начале файла .cpp (можно и в .h) объявляете переменные типа TColor (общие, т.е. "глобальные"), потом присваиваете этим переменным значения цвета ваших кружков, затем меняете их цвет на белый, затем сравниваете с эталоном (по индексам, если применить комбобокс, как в следующем примере)__
0
|
||||||
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|
| 10.11.2014, 21:04 | |
|
значение списка комбобоксов соответственно:
красный синий жёлтый чёрный зелёный серый салатовый (последовательность цветов переменной ColCombo[])
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
||||||
| 10.11.2014, 23:47 [ТС] | ||||||
|
Просто эти кружки, это не шейпы, они просто каждый раз заново рисуются на канве. Вот в этом проблема
Добавлено через 1 час 7 минут Извините еще раз за беспокойство. Вот я переделал с шейпами, мне нужно чтобы когда я нажимал на круги-они меняли цвет.Подскажите как сделать. Меняет цвет только один из трех кругов почему-то
0
|
||||||
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 11.11.2014, 00:25 | |
|
А если кругов 50, ты 50 Shape_MouseDown(...) напишешь?
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
|
| 11.11.2014, 09:11 [ТС] | |
|
подскажите, а как тогда можно сократить запись
0
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 11.11.2014, 09:16 | |
|
Всем шейпам назначаешь один обработчик ShapeMouseDown(...). А в обработчике в параметре Sender приходит адрес шейпа который вызвал обработчик. Т.е. TShape* Shape=(TShape*) Sender;
0
|
|
|
Супер-модератор
|
||||||
| 11.11.2014, 10:49 | ||||||
Сообщение было отмечено ler как решение
Решение
Проще уже сделать вот такой перехватчик:
2
|
||||||
|
0 / 0 / 0
Регистрация: 01.11.2014
Сообщений: 8
|
||||||
| 12.11.2014, 00:40 [ТС] | ||||||
|
Спасибо. но почему-то не работает,даже если обойтись без этого "перехватчика" , а просто в каждый обработчик OnMouseDown вставить этот код, то цвета вообще не меняются.А если оставить тот код, что был до этого, то меняется цвет только одного shape, а остальные остаются неизменными. Вы не могли бы подсказать в чем может быть дело?
Спасибо всем огромное! все получилось
0
|
||||||
| 12.11.2014, 00:40 | |
|
Помогаю со студенческими работами здесь
13
Игровой автомат, который подбирает случайным образом картинки в трех окошках
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|