نقل قول نوشته شده توسط eb_1345 مشاهده تاپیک
با سلام
اگه در نظر دارین بدون استفاده از خصوصیت HorizontalAnchor کنترل های مد نظرتون رو در قسمت سمت راست فرم نمایش بدهین باید از دو تابع عمومی زیر استفاده کنین :

Dim CTL As Control
Public Sub SaveAnchorRightCtl(frm As Form)
For Each CTL In frm.Controls
If CTL.Tag = "AnchorRight" Then
CTL.Tag = CTL.Tag & "," & frm.InsideWidth - CTL.Left
End If
Next CTL
End Sub

Public Sub ResizeAnchorRightCtl(frm As Form)
On Error Resume Next
Dim i As Integer
For Each CTL In frm.Controls
If Split(CTL.Tag, ",")(0) = "AnchorRight" Then
CTL.Left = frm.InsideWidth - ((frm.InsideWidth - (frm.InsideWidth - Split(CTL.Tag, ",")(1))))
End If
Next CTL
End Sub

قبل از فراخوانی توابع فوق باید ابتدا در قسمت خصوصیت Tag کنترل هائی که میخواهین در سمت راست فرم قرار بگیرن کلمه AnchorRight را وارد کنین . استفاده از این کلمه در قسمت فوق بدین خاطر است که از بین همه کنترل های فرم اون کنترل هائی که قرار است در سمت راست فرم نمایش داده شوند انتخاب کنیم
بعد از وارد کردن کلمه فوق در تگ کنترل های مد نظر حالا نوبت به فراخوانی تابع اول در رویداد Form_Load و فراخوانی تابع دوم در رویداد Form_Resize میباشه
در تابع اول تعیین کرده ایم که از بین کنتر هایی که تگ اونها معادل کلمه AnchorRight میباشه موقعیت اولیه حاشیه سمت چپ کنترل رو در تگ کنترل ( البته با یک علامت جداکننده بعد از کلمه AnchorRight ) درج بشه
در تابع دوم خواستیم که از بین همه کنترهای فرم اون کنترل هائی که کلمه اول خصوصیت تگ اونها AnchorRight میباشه انتخاب بشه و موقعیت ثانویه سمت چپ کنترل های فوق رو معادل تفاوت موقعیت اولیه رو از مقدار عرض فرم بدست بیاره
سلام جناب آقای بهرامی
درود بر شما
مطمئن بودم شما بر این مورد هم راه حلی پیدا می کنی
مثل همیشه عالی