![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 09.10.2008
Сообщений: 5
|
![]()
Здравствуйте у меня вот такая проблема:
Делаю программу-игрушку, что то вроде игры для детей на запоминание предметов и их расположения на доске. Есть матрица из 25 (5х5) компонентов типа DBImage при начале работы они все заполнены изображением с однородным фоном (типа незаполненные) Зытем при нажатии на кнопку «начать игру» они заполняются рандомным образом любым изображением из вспомогательной папки где лежат изображения. И еще 4 DBImage поля для будущей проверки. Затем по нажатию кнопки «Начать проверку» все картинки закрываются и сбоку появляются 4 окна с возможными изображениями для проверки, затем пользователь выбирает одно из предложенных изображений щелкая на него мышью а затем по закрытым полям DBImage заполняя тем самым их этими картинками. После нажатия на кнопку «Проверить» программа должна показать число ошибок Но вот беда она не показывает (тоесть показывает неправильно ) Проверка имеет вид: procedure TForm1.Button2Click(Sender: TObject); var och,i:byte; MyComponent: TComponent; begin och:=0; //обнуляем число ошибок for i:=1 to 25 do begin MyComponent:=FindComponent('DBImage '+ IntToStr(i)); //перебор элементов Znache:=TDBImage(MyComponent).Pictu re; //вытаскиваем картинку из элемента if not(Znache=ArMatr[i]) then //сравниваем с массивом для проверки och:=och+1; //считаем ошибки end; Label1.Caption:='Ошибок '+ IntToStr(och); end; Для справки Массив ArMatr: Array [1..25]of TPicture;//описан в самом Unit1.pas //заполняется на шаге «начать игру» Дело в том что if not(Znache=ArMatr[i]) всегда ложно! ![]() ![]() А весь проект можно посмотреть тут: http://narod.ru/disk/3091468000/programma.rar.html
Люди деляться на 10 типа: тех кто понимают бинарный код и и остальных...
|
![]() |
![]() |
![]() |
#2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() Цитата:
Где тут базы используются? И кто вас научил так изображения сравнивать??? |
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 09.10.2008
Сообщений: 5
|
![]()
DBImage выглядит лучше чем Image мне нужны были зоны которые четко видны.
Если не DBImage то что предложите? Что базы касается, я хоть про это свойство компонента из названия догадался но это ведь необязательно ведь программа то работает и нужный визуальный эффект достигнут и без лишних компонентов на форме. Если вы не поняли вопрос то напишу коротко: Что неправильного в сравнении?
Люди деляться на 10 типа: тех кто понимают бинарный код и и остальных...
|
![]() |
![]() |
![]() |
#4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Увы, но сравнивать нужно, как минимум, попиксельно... И то этот метод годится только для примитивных изображений.
А своим "способом" вы так и будете получать всегда ложный результат. У вас должен сработать самый простой вариант - нумерация картинок. Причем те самые 4 картинки для проверки вы можете просто копировать из своего массива, соответственно запоминая в некоей переменной номер правильной картинки. Цитата:
Просто вы подцепляете к проекту целый класс DBCtrls, причем совершенно неоправданно. Последний раз редактировалось mihali4; 09.10.2008 в 23:15. |
|
![]() |
![]() |
![]() |
#5 | |
Регистрация: 09.10.2008
Сообщений: 5
|
![]() Цитата:
![]()
Люди деляться на 10 типа: тех кто понимают бинарный код и и остальных...
|
|
![]() |
![]() |
![]() |
#6 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Возьмите TPanel. Установите ему белый цвет и свойство BorderStyle=bsSingle. А на панель положите TImage и установите ему свойство Align=alClient. Запустите проект.
Разве это не заменитель DBImage? И текст - пожалуйста... ![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
DBImage i Accsess | Coda89 | БД в Delphi | 5 | 28.05.2008 20:15 |
Размер картинок DBImage | Crookers | Общие вопросы Delphi | 1 | 12.05.2008 08:52 |
DBImage + jpeg + gif | Cyn4uk | БД в Delphi | 10 | 23.12.2007 19:24 |
Связь ComboBox с DBImage и DBMemo | gane4ka | Помощь студентам | 8 | 14.12.2007 17:52 |