2016-04-01 4 views
-1

Я пытаюсь поставить 25 кнопок внутри панели в VB.Net 2015 Классическая форма, как картинка, но она не работает. не могли бы вы помочь ... ниже мой кодУпорядочение кнопок внутри панели vb.net

Dim i As Integer 

    For i = 1 To 25 
     newButton = New Windows.Forms.Button 
     newButton.AutoSize = True 
     newButton.Name = "btnButton" & i 
     newButton.Text = "Button " & i 
     newButton.Top = i * 5 
     newButton.Left = i * 25 

     newButton.Size = New Size(95, 70) 

     AddHandler newButton.Click, AddressOf ButtonClicked 

     Panel1.Controls.Add(newButton) 

    Next 

enter image description here

+0

И «не работает» означает именно то, что? Вы, вероятно, получаете диагонально перекрывающиеся кнопки. Это то, что вы имеете в виду? –

+0

Да, это работает! Но они не устроены так, как вы хотите. Постарайтесь больше думать о том, как управлять им ... – daro

ответ

1

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

Вот этот фрагмент покажет вам, как организовать их в 5 столбцов и п строк:

Dim x As Integer = 5 ' x co-ordinate of the point 
Dim y As Integer = 5 ' y co-ordinate of the point 
For i = 1 To 25 
    If i Mod 5 = 0 Then ' For starting next row after column 
     y += 100 ' 100 is not mandatory change as per size of button 
     x = 0 
    Else 
     x += 100 ' 100 is not mandatory change as per size of button 
    End If 
    Dim p As Point = New Point(x, y) 
    Dim newButton = New Windows.Forms.Button 
    newButton.Location = p 
    //do the rest of formatting here 
    Panel1.Controls.Add(newButton) 
Next 
Смежные вопросы