2014-12-22 2 views
-1

У меня есть этот код, который запрашивает ключ для открытия определенной формы окна. Если количество недопустимых ключей больше 3, приложение заканчивается.Коробка ввода с двумя значениями в качестве входов

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 




     Dim clave As String, attempts As Integer, intentoclave As String 

     'This is the key 

     clave = "UNI" 
     attempts = 0 


     For attempts = 1 To 4 


      If attempts < 4 Then 
       intentoclave = InputBox("Write the key") 

       If intentoclave = clave Then 
        Exit For 

        Me.Show() 
       End If 
      Else 
       End 
      End If 

     Next 



    End Sub 

Работает нормально, но я хотел бы ввести имя пользователя, а также в поле ввода. Как я могу это сделать?

+0

AFAIK, получив два значения из одного поля ввода не непосредственно возможно. Вы можете попросить пользователя ввести оба значения в определенном формате (например, «имя пользователя: ключ»), а затем разделить ответ и проверить оба значения или создать новую форму с двумя полями. –

+0

Какие технологии пользовательского интерфейса вы используете? WPF? WinForms? Вы всегда можете создать свою собственную форму и использовать 'ShowDialog' (в WinForms) для этого. –

+0

Window Form. Я узнаю о ShowDialog – CreamStat

ответ

0

InputBox function имеет дополнительные значения:

Public Function InputBox(_ 
    ByVal Prompt As String, _ 
    Optional ByVal Title As String = "", _ 
    Optional ByVal DefaultResponse As String = "", _ 
    Optional ByVal Xpos As Integer = -1, _ 
    Optional ByVal YPos As Integer = -1 _ 
) As String 

Вы не указали, как извлекается имя пользователя, ни где вы хотите отобразить его, но если вы хотите, чтобы отобразить его в качестве значения по умолчанию в поле ввода, все вам нужно сделать, это передать, что имя для третьего параметра (DefaultResponse) функции InputBox:

intentoclave = InputBox("Write the key", "Any title", "Your username goes here!") 
+0

. Я имел в виду, что поле ввода должно запрашивать два значения: «Ключ» и «Имя пользователя». В моем коде он только запрашивает ключ. Может быть, поле ввода не допускает этого. Итак, есть другой способ? – CreamStat

+0

Я думаю, что он хочет получить два значения из одного входного поля ... –

+0

Я хочу задать два разных значения, я не думаю, что InputBox - это правильный способ сделать это. Вы можете отобразить 2 последующих InputBox, или вы можете создать собственное окно (в зависимости от используемой технологии (WinForm/WPF). –

Смежные вопросы