Основы VB Советы          Контролы, объекты, эл. управления
Как очистить от записей объект ListBox
Защита пароля в TextBox
Resize всех контролов на форме
 Сергей Миллер       Как очистить от записей объект ListBox

Do Until List1.ListCount = 0
    List1.RemoveItem 0
Loop

 Очищает моментально любой листбокс.

 Назад


 Сергей Миллер       Защита пароля в TextBox

Есть много программ, снимающих маски с окон с паролями... Все, наверное, видели: наводишь мышку на окно со звёздочками и в окне программы-взломщика появляется текст пароля. Приложения, написанные на Visual Basic не защищены от этого... Другими словами в текстовом окне всё же находится текст, только замаскированный. Я же нашёл как этого избежать:

  • в разделе формы General Declarations объявите переменную, котрая будет содержать код:
Dim pswd As String
  • в свойствах текстового поля установите в PasswordChar звёздочку "*". Теперь кликните по текстовому полю два раза и выберите событие Text1_KeyPress, впишите:
Private Sub Text1_KeyPress(KeyAscii As Integer)
   pswd = pswd + Chr(KeyAscii)
   KeyAscii = Asc("*")
End Sub
  • Теперь нажатия будут отлавливаться, а передаваться будут текстовому полю только звёздочки! И программа-взломщик пароль уже не достанет!!! Если кто-то хочет сделать так, как в Linux'e, т.е. никаких звёздочек нет вообще, то строку KeyAscii = Asc("*") надо заменить на KeyAscii = 0 и всё!

 Назад


 Александр Новожилов                     Resize всех контролов на форме


Option Explicit
Const K = 1.25 

'если 800/600 то получится 1.33333, но лучше 1.25
'эта функция относится к определению разрешения экрана


Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long  

Private Sub Form_Load()
'определяем разрешения экрана
Select Case GetSystemMetrics(0)
 Case 640
Form1.Width = 9600
'Command1.Width=1500
 Case 800
Form1.Width = Form1.Width * K
'Command1.Width = Command1.Width * K
End Select
Form1.Caption = GetSystemMetrics(0) & "x" & GetSystemMetrics(1)
End Sub

 Назад

 

Используются технологии uCoz