2013-11-15 7 views
1

У меня есть цикл, где я хочу, чтобы добавить кнопку каждый раз, когда цикл повторяется ...VB.net добавить кнопку, чтобы сформировать

У меня есть это выше моего время:

Dim mybut As New Button 
Dim btn_number As Integer = 0 

У меня есть это в мое время:

btn_number += 1 
mybut.AutoSize = True 
mybut.Name = "delete-btn" & btn_number 
mybut.Location = New System.Drawing.Point(77, 112) 
mybut.Text = "Delete" 
With mybut.Controls 
.Add(mybut) 
End With 

Но я получаю сообщение об ошибке ... это на датском, поэтому у меня есть небольшие проблемы его перевод на английский язык, мне очень жаль .... Но это что-то об объекте, ссылается на себя в цикле ...

Надеюсь, что некоторые из вас могут выявить проблему .... Возможно, что я пишу это все неправильно ... Спасибо.

+0

Если btn_number объявлен локально, это может быть проблемой. Пожалуйста, включите цикл и где вы объявите переменную btn_number. – Edper

+0

Ну, я попытался удалить свой btn_number во всех местах скрипта, но не имеет никакого значения, поэтому я не думаю, что это проблема ... – Zjitzu

ответ

1

Вы не можете добавить кнопку к своим собственным элементам управления (как и к mybut.Controls.Add(mybut)).
Вы должны добавить его в коллекцию элементов управления какого-нибудь контейнера, который может быть сам по себе (Me.Controls.Add)

mybut = New Button 
btn_number += 1 
With mybut 
    mybut.AutoSize = True 
    mybut.Name = "delete-btn" & btn_number 
    mybut.Location = New System.Drawing.Point(77, 112 + 
       btn_number * (mybut.height + 5)) 
    mybut.Text = "Delete" 
End With 
Me.Controls.Add(mybut) 

вероятно Вы также хотите, чтобы изменить положение для каждой кнопки формы - как показано здесь.

Как для редактирования:
Поместите это выше петли: Dim mybut As Button
И это внутри цикла: mybut = New Button

+0

Это сработало, спасибо большое: D – Zjitzu

0

Проблема заключается в том, что вы пытаетесь .Add(mybut) к mybut.Controls.

Если вы используете этот код в цикле, вы также должны рассмотреть возможность изменения .Location каждой созданной кнопки.

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