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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2007, 21:11   #1
MAKEDON
The First Person!
Форумчанин
 
Аватар для MAKEDON
 
Регистрация: 07.08.2007
Сообщений: 228
Восклицание Помогите с программой!

Народ, помогите с программой.
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var n,m: integer;

begin
If key= VK_Shift then //при нажатии этой клавиши совершается выстрел
begin
m:= Shape1.Height;
n:= Shape1.Width;
Shape1.Width:=n;
Shape1.Height:=m;
fORM1.Canvas.Ellipse(????????); //что надо здесь написать, чтобы круг рисовался(на форме) там где у меня находится прицел, круг. Прицел у меня объект shape1.
end;
if( Key = VK_RIGHT ) and ( shape1.Left + shape1.Width <= Form1.ClientWidth-7 ) then shape1.Left := shape1.Left+7;
if (key = VK_LEFT)and(shape1.Left>=3) then shape1.Left:=shape1.Left-7;
if( Key = VK_down ) and ( shape1.top + shape1.Height <= Form1.ClientHeight-8 ) then shape1.Top := shape1.Top+8;
if (key = VK_up)and(shape1.top>=3) then shape1.top:=shape1.top-7;

end;
Это будет что-то типа ТИРА. Только сам цельшься. Типа телефонной игры Kill Boss!!!
Программа обычно делает то что вы ей сказали сделать, а не то что бы вы хотели, чтобы она сделала.
MAKEDON вне форума Ответить с цитированием
Старый 26.12.2007, 21:20   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Цитата:
Сообщение от MAKEDON Посмотреть сообщение
fORM1.Canvas.Ellipse(????????); //что надо здесь написать, чтобы круг рисовался(на форме) там где у меня находится прицел, круг. Прицел у меня объект shape1.
Координаты эллипса
fORM1.Canvas.Ellipse(Shape1.Left,Sh ape1.Top,Shape1.Left+Shape1.Width,S hape1.Top+Shape1.Height);
_Dmitry вне форума Ответить с цитированием
Старый 27.12.2007, 12:56   #3
MAKEDON
The First Person!
Форумчанин
 
Аватар для MAKEDON
 
Регистрация: 07.08.2007
Сообщений: 228
По умолчанию

Нет. Мне нужно чтобы элипс рисовался на форме и при передвижении прицела(Shape1) он оставался на месте. Чтобы рисовать много кружков.
Программа обычно делает то что вы ей сказали сделать, а не то что бы вы хотели, чтобы она сделала.
MAKEDON вне форума Ответить с цитированием
Старый 27.12.2007, 13:46   #4
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Если рисовать на форме, то при ее обновлении, все что на ней нарисовано пропадает. Поэтому необходимо будет перерисовывать все эллипсы, нарисованные ранее, либо рисовать не на форме, а на компоненте, который сохраняет свое содержимое при обновлении. Таковым является Image.
_Dmitry вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите с программой 1234 Общие вопросы Delphi 6 05.03.2008 19:08
помогите с программой LexusSPb Фриланс 2 04.09.2007 16:29