VB-Forever #3
Вступление
Статьи

WinApi
 Окна и манипуляторы ver 3.0 Теория
 Окна и манипуляторы ver 3.0 Практика

Реестр
 Работа с реестром средствами VB
 Работа с реестром средствами WinAPI
 Извлекаем пользу из реестра

Примеры
Примеры к статьям
 Hack - вскрытие звёздочек
 Undo - кнопка отмена в TextBox-е
 FileType - ассоциация файла с приложением
 Autostart - программа в Автозагрузке
Другие примеры
 MouseMeter - пробег мыши
 ImgViewer - просмотр графических файлов
Для VB-Кодера
Ё-mail
 FAQ
Юмор
 Месть (сказка народов тундры)
 Хроники лаборатории: дератизация
Стань автором
 Как стать автором
Информация
 Условия использования и распротранения
 
FAQ

На вопросы отвечает Хованский Ян
Источник: http://yansoft.nm.ru

Вопросы:


1. Вот у меня есть массив обектов (картинки) от 0 до 3х... как программно, када прога уже работает добавить в этот массив 4, 5 и т.д. чтобы они еще и на события откликались..

2. Как сделать что бы форма бегала за курсором?

3. Как менять кодировку текста (WIN -> DOS)?

4. Как переключить раскладку клавиатуры (RU или EN)?

5. Как скрыть курсор мыши?

Ответы:

Вот у меня есть массив обектов (картинки) от 0 до 3х... как программно, када прога уже работает добавить в этот массив 4, 5 и т.д. чтобы они еще и на события откликались..

Ответ:

Picture1(x) - твои картинки

'Добавить новые объекты

Load Picture1(4)
Picture1(4).Visible = True
Load Picture1(5)
Picture1(5).Visible = True

'Окликаться на события

Private Sub Picture1_Click(Index As Integer)
Select Case Index
Case 4
MsgBox "Ты нажал Picture4"
Case 5
MsgBox "Ты нажал Picture5"
End Select

End Sub

Как сделать что бы форма бегала за курсором?

Ответ:

(Timer1.Interval = 30)

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Type POINTAPI
x As Long
y As Long
End Type

Private Sub Timer1_Timer()
Dim cur As POINTAPI
GetCursorPos cur
Me.Top = cur.y * 15 - Me.Height / 2
Me.Left = cur.x * 15 - Me.Width / 2
End Sub

Как менять кодировку текста (WIN -> DOS)?

Ответ:

'// Функции
Private Declare Function CharToOem Lib "user32" Alias "CharToOemA" _
(ByVal lpszSrc As String, ByVal lpszDst As String) As Long

'// Функция для перевода текста в DOS
Private Function TextDOS(Text As String) As String
Dim strBuff As String
strBuff = Space(Len(Text) + 1)
OemToChar Text, strBuff
TextDOS = Left$(Text1, Len(strBuff))
End Function

Как переключить раскладку клавиатуры (RU или EN)?

Ответ:

Private Declare Function ActivateKeyboardLayout Lib "user32" _
(ByVal HKL As Long, ByVal flags As Long) As Long

'// На русский
ActivateKeyboardLayout 68748313, 0
'// На английский
ActivateKeyboardLayout 67699721, 0

Как скрыть курсор мыши?

Ответ:

Private Declare Function ShowCursor Lib "user32" (ByVal bShow As Long) As Long

ShowCursor False

Если у Вас есть вопросы, пишите

Copyright © Hovanskiy Yan