Фигуры в visual basic - VB (61100)
Формулировка задачи:
1. Подготовить приложение для изучения свойств объекта фигуры в соответствии с рисунком 2. При-ложение должно работать следующим образом. Щелчок мышки на соответствующем переключателе должен автоматически изменять свойство фигуры. Если флажок помечен – форма имеет границу, в противном случае – нет. По щелчку мыши на кнопке exit программа должна прекращать работу. Помогите сделать
Решение задачи: «Фигуры в visual basic»
textual
Листинг программы
Private Type POINTAPI X As Long Y As Long End Type Private Declare Function Polygon Lib "gdi32" (ByVal hdc As Long, lpPoint As Any, ByVal nCount As Long) As Long Private Sub DrawNGon(ByVal X As Long, ByVal Y As Long, ByVal Radius As Long, Optional ByVal Count As Long = 3) Dim Omega As Double Dim nX As Double, nY As Double, K As Long Dim Ox As Double, Oy As Double Dim Pt() As POINTAPI ReDim Pt(Count) Omega = 6.28318530717959 / Count Ox = -Cos(Omega / 2): Oy = Sin(Omega / 2) Pt(0).X = Ox * Radius + X: Pt(0).Y = Oy * Radius + Y For K = 1 To Count nX = Ox * Cos(Omega) - Oy * Sin(Omega) nY = Ox * Sin(Omega) + Oy * Cos(Omega) Pt(K).X = nX * Radius + X: Pt(K).Y = nY * Radius + Y Ox = nX: Oy = nY Next Polygon picDisplay.hdc, Pt(0), Count End Sub Private Sub DrawSix() DrawNGon picDisplay.ScaleWidth / 2, picDisplay.ScaleHeight / 2, picDisplay.ScaleWidth / 3, 6 End Sub Private Sub DrawSquare() DrawNGon picDisplay.ScaleWidth / 2, picDisplay.ScaleHeight / 2, picDisplay.ScaleWidth / 2, 4 End Sub Private Sub DrawRectangle() Dim W As Long, H As Long W = picDisplay.ScaleWidth - 10 H = W / 2 picDisplay.Line (5, (picDisplay.ScaleHeight - H) / 2)-Step(W, H), , B End Sub Private Sub DrawCircle() picDisplay.Circle (picDisplay.ScaleWidth / 2, picDisplay.ScaleHeight / 2), picDisplay.ScaleWidth / 2 - 10 End Sub Private Sub DrawOval() picDisplay.Circle (picDisplay.ScaleWidth / 2, picDisplay.ScaleHeight / 2), picDisplay.ScaleWidth / 2 - 10, , , , 0.5 End Sub Private Sub chkBorder_Click() picDisplay.DrawStyle = IIf(chkBorder.Value = vbChecked, 0, 5) picDisplay.DrawWidth = 3 DrawShape End Sub Private Sub DrawShape() picDisplay.Cls If optShape(0).Value Then DrawRectangle If optShape(1).Value Then DrawSquare If optShape(2).Value Then DrawOval If optShape(3).Value Then DrawCircle If optShape(4).Value Then DrawSix picDisplay.Refresh End Sub Private Sub cmdExit_Click() End End Sub Private Sub Form_Load() picDisplay.FillColor = vbCyan picDisplay.ForeColor = vbBlue chkBorder.Value = vbChecked optFill(0).Value = True optShape(0).Value = True End Sub Private Sub optFill_Click(Index As Integer) picDisplay.FillStyle = Index DrawShape End Sub Private Sub optShape_Click(Index As Integer) DrawShape End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д