|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Delphi треугольник, круг, квадрат при нажатии клавиши
Доброго времени суток всем, помогите пожалуйста нубу с программой! Буду очень благодарен и всем кто поможет +1 к карме
Суть такая при нажатии кнопки первой кнопки выбирается квадрат и на поле image там где курсор рисуется квадрат, при нажатии кнопки 2 тоже самое, но рисуется круг, при нажатии кнопки 3 рисуется треугольник и 4ая кнопка должна поворачивать все объекты в поле imgae на 90 по часовой стрелке. |
#2
|
||||
|
||||
Пересмотрите задание, слишком много ереси, нету в природе "кнопки первой кнопки", да и сколько квадрат с кругом не поворачивай на 90, толку не будет
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#3
|
|||
|
|||
Ну должно быть так
Button 1 треугольник Button 2 квадрат Button 3 круг Кнопки в самой программе должны быть имеется ввиду |
#4
|
|||
|
|||
когда нажимается кнопка Button1, то курсор находится повех кнопки. На кнопке рисовать будем?
|
#5
|
|||
|
|||
Цитата:
|
#6
|
||||
|
||||
Средствами самого image
Код:
procedure TForm1.Button1Click(Sender: TObject); var pol: array[0..2] of TPoint; begin pol[0].x:= 10; pol[0].y:= 20; pol[1].x:= 70; pol[1].y:= 20; pol[2].x:= 70; pol[2].y:= 70; with Image1.Canvas do begin Brush.Style:= bsClear; Pen.Color:= clRed; Polygon(pol); end; end; procedure TForm1.Button2Click(Sender: TObject); begin with Image1.Canvas do begin Brush.Style:= bsClear; Pen.Color:= clGreen; Rectangle(200, 200, 250, 250); end; end; procedure TForm1.Button3Click(Sender: TObject); begin with Image1.Canvas do begin Brush.Style:= bsClear; Pen.Color:= clBlue; Ellipse(170, 170, 100, 100); end; end; procedure TForm1.Button4Click(Sender: TObject); var x,y,z: uint; cnv: TBitmap; begin cnv:= TBitmap.Create; cnv.Assign(Image1.Picture.Bitmap); for X:=0 to image1.picture.width-1 do for Y:=0 to image1.picture.Height-1 do begin z:= image1.Canvas.Pixels[x,y]; cnv.Canvas.Pixels[y,x]:= z; end; Image1.Picture.Bitmap.Assign(cnv); cnv.Free; end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#7
|
|||
|
|||
Спасибо большое, очень выручили! А насчет фигур то, что поворачивается только треугольник понятное дело, что на 90 градусов только так, другое дело препроду надо чтоб они поворачивались, я тоже не особо понял зачем поворачивать круг и квадрат на 90 градусов))
|
#8
|
||||
|
||||
Если нарисовать на круге или квадрате радиус и биссектрису соответственно, то смысл поворота бедет виден.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#9
|
||||
|
||||
Что-то подобное я уже писал.
На заборе. За стакан самогона. Хей-хей-хей! Только не ходите в мой сарай, лады?.. |