![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Вот часть кода, по которому должен рисоваться квадрат при нажатии кнопки:
============================ procedure Kubik(q: array of TPoint; a,b,c,d,e,f,g,h,t: integer); begin case t of 1:Form1.Canvas.Brush.Color:=clGreen ; 2:Form1.Canvas.Brush.Color:=RGB (255, 150, 00); 3:Form1.Canvas.Brush.Color:=clYello w; 4:Form1.Canvas.Brush.Color:=clWhite ; 5:Form1.Canvas.Brush.Color:=clBlue; 6:Form1.Canvas.Brush.Color:=clRed; end; q[1].x:=a; q[1].y:=b; q[2].x:=c; q[2].y:=d; q[3].x:=e; q[3].y:=f; q[4].x:=g; q[4].y:=h; Form1.Canvas.Polygon(q); end; procedure TForm1.Button1Click(Sender: TObject); begin Kubik(Up11,100,100,200,100,200,200, 100,200,4) ; end; ================================== Но рисуется не квадрат, а то, что изображено на картинке: ![]() Подскажите пожалуйста, в чем тут ошибка, я не могу понять.... |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
up11 что за массив по-вашему?
Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
up11 - это array [1..4] of TPoint.
Я что то не понимаю в вашем коде, как масссив q будет работать в процедуре если он нигде не объявлен, и что такое SpeedButton... И можно ли как нибудь сделать, просто исправив мой код?.. |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
...у меня он объявлен как - q: array[1..4] of TPoint
...а вы извратились передав статический up11[1..4] параметром в качестве динамического, первым элементом которого является "0" элемент, который тоже является точкой [0, 0] (по-умолчанию), фактически вы передали 5 точек - отсюда ваша картинка (полигону, что дали - то он и построил, он не гордый) ![]()
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Я не совсем разбираюсь, в том, что вы сказали.... Можно ли каким то образом просто исправить мой код?
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Вообщем суть моей программы в том, что сначала нужно построить около 20-ти таких квадратиков, но я объявил такое же количество массивов из точек и мне нужно, чтоб каждый из них сохранял координаты этих точек, поэтому я и хотел написать процедуру, чтоб по очереди использовать массивы.... Так можно ли вообще сделать так, как я хотел?
|
![]() |
![]() |
![]() |
#7 | |||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]() Цитата:
Цитата:
Цитата:
Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
|||
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Все ясно, спасибо огромное=)
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите! есть проблемка | RML | Microsoft Office Excel | 28 | 12.05.2010 20:56 |
Canvas.Poligon - есть проблемка.. | Mr_freeman | Помощь студентам | 0 | 14.03.2010 14:32 |
Я-чайник (в excel) - у меня есть к Вам просьба, если есть желание и время - помогите. | rococococo | Microsoft Office Excel | 0 | 04.10.2009 12:16 |
проблемка( | Alexcomeback | Общие вопросы C/C++ | 4 | 16.04.2009 18:38 |