Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.05.2009, 12:17   #1
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
Восклицание Компонент - Image?!

У меня задач написать програму Ханойськие башни. У меня есть пример скачаніе исходники уже готовой програми там всьо основано на компоненте Shape. правда там мне не всё понятно - вот для начала хочу спросить - можна ли реализовать даную игру при помощи Image??
Заранее огромнеёшее спасибо!!!
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""
$T@LKER вне форума Ответить с цитированием
Старый 09.05.2009, 13:43   #2
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
можна ли реализовать даную игру при помощи Image??
Да можно.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 09.05.2009, 13:51   #3
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
По умолчанию

Подскажите пожалуйста что за параметр - HINT? Э какаято метка?
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""
$T@LKER вне форума Ответить с цитированием
Старый 09.05.2009, 13:56   #4
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Hint - это всплывающая подсказка (сам текст подсказки), а чтоб она работала нужно ShowHint поставить в true.
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 09.05.2009, 14:02   #5
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
По умолчанию

В том примери порграмы о которм я писал выше даный Хинт принимает какието символы который потом в процесе рпограмы применяються для сравнения я просто немогу понять... я краще вот покажу:

procedure TForm1.BDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=((Sender AS TShape).Hint[2]='X')AND
((Source AS TShape).Width<(Sender AS TShape).Width);
end;

procedure TForm1.BDragDrop(Sender, Source: TObject; X, Y: Integer);
VAR
Moved,Still:TShape;
begin
s:=s+1;
Label2.Caption:=FloatToStr(s);
Moved:=Source AS TShape;
Still:=Sender AS TShape;
Moved.Top:=Still.Top-Moved.Height+1;
Moved.Left:=Still.Left+(Still.Width DIV 2)
-(Moved.Width DIV 2);
WITH FindComponent (Moved.Hint[1]) AS TShape do
begin
if Name<='E' then DragMode:=dmAutomatic;
Hint:=Hint[1]+'X';
end;
Moved.Hint:=Still.Name+'X';
Still.Hint:=Still.Hint[1]+Moved.Name;
Still.DragMode:=dmManual;
if (L.Hint='XX') and (M.Hint='XX') then
Caption:='Towers of Hanoi - Done!';
end;


Вопрос следующий - зачем и как здесь применяеться Hint??
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""

Последний раз редактировалось $T@LKER; 09.05.2009 в 14:45.
$T@LKER вне форума Ответить с цитированием
Старый 10.05.2009, 00:13   #6
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Цитата:
Сообщение от $T@LKER Посмотреть сообщение
В том примери порграмы о которм я писал выше даный Хинт принимает какието символы который потом в процесе рпограмы применяються для сравнения я просто немогу понять... я краще вот покажу:

procedure TForm1.BDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=((Sender AS TShape).Hint[2]='X')AND
((Source AS TShape).Width<(Sender AS TShape).Width);
end;

procedure TForm1.BDragDrop(Sender, Source: TObject; X, Y: Integer);
VAR
Moved,Still:TShape;
begin
s:=s+1;
Label2.Caption:=FloatToStr(s);
Moved:=Source AS TShape;
Still:=Sender AS TShape;
Moved.Top:=Still.Top-Moved.Height+1;
Moved.Left:=Still.Left+(Still.Width DIV 2)
-(Moved.Width DIV 2);
WITH FindComponent (Moved.Hint[1]) AS TShape do
begin
if Name<='E' then DragMode:=dmAutomatic;
Hint:=Hint[1]+'X';
end;
Moved.Hint:=Still.Name+'X';
Still.Hint:=Still.Hint[1]+Moved.Name;
Still.DragMode:=dmManual;
if (L.Hint='XX') and (M.Hint='XX') then
Caption:='Towers of Hanoi - Done!';
end;


Вопрос следующий - зачем и как здесь применяеться Hint??
В коде, что вы предоставили загружают значение hint во время работы программы.
Применяют hint в основном для удобства пользователю (например коментарии к кнопке).
p.s.
Возможно, для экономии переменных, hint используют как string-овую переменную (при условии что ShowHint=false), раз идет сравнение ее с чем нибудь, во время работы программы.

Исходя из сл. кода
Код:
if (L.Hint='XX') and (M.Hint='XX') then
Caption:='Towers of Hanoi - Done!';
я прав по поводу переменной.
Будь проще, бери пример с одноклеточных

Последний раз редактировалось 856100; 10.05.2009 в 00:16. Причина: внимательно просмотрел код
856100 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Компонент Image Небесный Мультимедиа в Delphi 8 02.02.2009 19:59
Image IVANSour Общие вопросы Delphi 10 19.01.2009 18:11
как сделать форму невидимой,а компонент image нет!? hacknet Общие вопросы Delphi 4 15.11.2008 10:01
как можно врощать компонент image вокруг себя? steck Мультимедиа в Delphi 1 31.08.2007 12:04
image Elm0 Свободное общение 4 21.06.2007 17:34