Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Power Basic

Страница: 1 |

 

  Вопрос: %ES_PASSWORD Добавлено: 14.11.05 01:40  

Автор вопроса:  Zoomie
У меня создается программно диалог, значит у меня есть все ID контролов. Есть TextBox, в котором изначально стоит %ES_PASSWORD. Как из другой функции можно снять это свойство?

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #1
Добавлено: 14.11.05 08:00
Ну %ES_ - это что такое? Стиль. Значит тебе нужно програмно изменить стиль э.у. Для изменения стиля используются функции Get(Set)WindowLong с флагом GWL_STYLE. Более подробно смотри справочную литературу.

Ответить

Номер ответа: 2
Автор ответа:
 Zoomie



Вопросов: 3
Ответов: 4
 Профиль | | #2 Добавлено: 14.11.05 15:21
Э... Я в PB новичок.

Можно кодик плиз

Ответить

Номер ответа: 3
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #3
Добавлено: 15.11.05 16:01
 Суть в том что функцией GetWindowLong c параметром GWL_STYLE ты получаешь комбинацию всех стилей окна в одну переменную. Затем добавляешь дополнительный стиль булевой OR (ИЛИ) и устанавливаешь новую комбинацию стилей функцией SetWindowLong.
Пример для VB
'This project needs a TextBox
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Const GWL_STYLE = (-16)
Const ES_NUMBER = &H2000&
Public Sub SetNumber(NumberText As TextBox, Flag As Boolean)
    Dim curstyle As Long, newstyle As Long

    'retrieve the window style
    curstyle = GetWindowLong(NumberText.hwnd, GWL_STYLE)

    If Flag Then
       curstyle = curstyle Or ES_NUMBER
    Else
       curstyle = curstyle And (Not ES_NUMBER)
    End If

    'Set the new style
    newstyle = SetWindowLong(NumberText.hwnd, GWL_STYLE, curstyle)
    'refresh
    NumberText.Refresh
End Sub
Private Sub Form_Load()
    'KPD-Team 1999
    'URL: http://www.allapi.net/
    'E-Mail: KPDTeam@Allapi.net

    SetNumber Text1, True
    Me.Caption = "Now, try typing some letters into the textbox"
End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам