Поделиться через


Система координат (для пользователей Visual Basic 6.0)

Обновлен: Ноябрь 2007

Координаты форм и элементов управления в версии Visual Basic 2008 выражаются иначе, чем в Visual Basic 6.0; методы изменения размера и перемещения форм также отличаются.

Концептуальные различия

В Visual Basic 6.0 координаты форм и элементов управления выражаются в твипах. В Visual Basic 2008 координаты выражаются в точках.

Свойства Height и Width

В Visual Basic 6.0 для изменения размера формы или элемента управления используются свойства Height и Width. В Visual Basic 2008 введено свойство Size, которое также позволяет изменять высоту и ширину одним действием.

Метод Move

В Visual Basic 6.0 для изменения положения формы или элемента управления во время выполнения используется метод Move. В Visual Basic 2008, метод Move заменен методом SetBounds и координаты выражаются в точках.

Свойство ScaleMode

В Visual Basic 6.0 существует также свойство ScaleMode, с помощью которого можно определить иную систему координат. В Visual Basic 2008 поддерживается только одна система координат — на основе точек. Свойство ScaleMode и связанные с ним свойства и методы (Scale, ScaleHeight, ScaleLeft, ScaleTop, ScaleWidth, ScaleX, ScaleY) в версии Visual Basic 2008 не поддерживаются. Дополнительные сведения см. в разделе Режим ScaleMode не поддерживается.

Изменение кода для работы с координатами

В следующем коде показаны различия в методах программирования между Visual Basic 6.0 и Visual Basic 2008.

Изменение размера формы

В следующем примере показано, как изменять размер формы во время выполнения.

' Visual Basic 6.0
' Measurements are in twips.
Me.Width = 8000
Me.Height = 6000
' Visual Basic
' Measurements are in pixels.
Me.Size = New System.Drawing.Size(640, 480)

Перемещение элемента управления

В следующем примере показано, как перемещать элемент управления во время выполнения.

' Visual Basic 6.0
' Move and retain original size.
CommandButton2.Move 2000, 1000
' Move and resize to 1200 by 800 twips.
CommandButton1.Move 0, 0, 1200, 800
' Visual Basic
' Move and retain original size.
Button2.SetBounds(20, 10, 0, 0, BoundsSpecified.X Or BoundsSpecified.Y)
' Move and resize to 120 by 80 pixels.
Button1.SetBounds(0, 0, 120, 80)

Замечания по обновлению

При обновлении приложения Visual Basic 6.0 до приложения Visual Basic 2008 значения свойств Height и Width форм и элементов управления автоматически преобразуются в точки.

Если в исходном приложении использовалось свойство ScaleMode, то средство обновления исходит из того, что в свойстве ScaleMode во время разработки были установлены в качестве единиц твипы; в противном случае преобразование будет неверным и потребуется внести изменения. Дополнительные сведения см. в разделе Режим ScaleMode не поддерживается.

См. также

Основные понятия

Объект Form для пользователей Visual Basic 6.0

Другие ресурсы

Элементы управления Windows Forms (для пользователей Visual Basic 6.0)

Изменения в свойствах, методах и событиях элементов управления для пользователей Visual Basic 6.0