РАССЫЛКА САЙТА WWW.IGORYKSOFT.NAROD.RU

ВЫПУСК 5

     Здравствуйте!

Сегодня в выпуске:

  • Обновления на сайте;

  • Несколько малоизвестных функций в VB 6.0;

  • Как избежать различных расположений и размеров объектов при различных расширениях экрана;

  • Вопрос-Ответ.

Обновления на сайте:

    Особых обновлений на сайте не было.

Несколько малоизвестных функций в VB 6.0

1. Как расположить символы строки в обратном порядке?

    Для этого используется функция StrReverse. Например, следующий код возвратит "tfoSkyrogI":

    MsgBox StrReverse("IgorykSoft");

2. Как активизировать окно, не используя API-функций?

    Для этого используется функция AppActivate. Она активизирует приложения, если они есть в памяти компьютера, т.е. либо занесены в реестр, либо открыто в данный момент. Синтаксис команды: AppActivate(title[, wait]),

где title - заголовок окна, либо возвращаемое значение функции Shell;

      wait - передавать ли фокус окна открытому приложению.

   Вот несколько примеров использования этой функции:

  1. AppActivate "Microsoft Word" 'Активизирует Microsoft Word.

  2. X=Shell("C:\myprog.exe",1)'Запустится файл myprog.exe

     AppActivate (X)'Активизируется приложение myprog.

Как избежать различных расположений и размеров объектов при различных расширениях экрана

    Иногда, нужно при разных расширениях экрана пропорционально уменьшать или увеличивать размеры объектов. Дело в том, что если нужно сохранить пропорции объектов используется ScaleMode=Twip, но при настройке экрана, также настраивается размер используемого шрифта - 125% например, - Twip здесь не помогает, но есть другое решение этой проблемы:

Dim ScreenOldWidth, ScreenOldHeight, ScreenNewWidth, ScreenNewHeight As Integer
Dim AllComp As New Collection

Private Sub Form_Load()
ScreenOldWidth = 9600
ScreenOldHeight = 7200
ScreenNewWidth = Screen.Width
ScreenNewHeight = Screen.Height

if ScreenOldWidth <> ScreenNewWidth or ScreenNewHeight <> ScreenOldHeight then
Me.Height = (ScreenNewHeight * Me.Height) \ ScreenOldHeight
Me.Width = (ScreenNewWidth * Me.Width) \ ScreenOldWidth
Me.Top = (ScreenNewHeight * Me.Top) \ ScreenOldHeight
Me.Height = (ScreenNewWidth * Me.Height) \ ScreenOldWidth
For Each Object In Form1.Controls
AllComp.Add Object.Name
Object.Height = (ScreenNewHeight * Object.Height) \ ScreenOldHeight
Object.Width = (ScreenNewWidth * Object.Width) \ ScreenOldWidth
Object.Top = (ScreenNewHeight * Object.Top) \ ScreenOldHeight
Object.Height = (ScreenNewWidth * Object.Height) \ ScreenOldWidth
Next

End If
End Sub

    Единственное, при программировании программы нужно запустить на выполнение две функции - Screen.Width и Screen.Height и их значения вставить в переменные ScreenOldWidth и ScreenOldHeight соответственно.

Вопрос-Ответ

Жду вопросов по почте: igoryksoft@yandex.ru 

    На этом все.

Пишите на почту: igoryksoft@yandex.ru. Заходите на сайт: www.igoryksoft.narod.ru

При копировании представленных здесь материалов, обязательно делать ссылку на www.igoryksoft.narod.ru!

 

Назад Содержание Вперед

Hosted by uCoz