سلام من یه یوزر فرم دارم که داخلش یدونه تکس باکس هست ویژگی auto size رو برای این تکس باکس true میزارم حالا وقتی یه متنی تایپ میکنم از سمت راست تکس باکس رو کوچک میکنه من میخوام تکس باکس رو از سمت چپ کوچک کنه
چگونگی auto size از راست
Collapse
X
-
-
سلام ویژگی AutoSize را روی False و ویژگی TextAlign را روی fmTextAlignRight قرار داده و از کد ذیل استفاده کنید
کد PHP:Public L As Integer
Private Sub TextBox1_Change()
Dim txt As Variant
txt = TextBox1.Text
If (L < Len(txt)) Then
Me.TextBox1.Left = Me.TextBox1.Left - 5
Me.TextBox1.Width = Me.TextBox1.Width + 5
Else
Me.TextBox1.Left = Me.TextBox1.Left + 5
Me.TextBox1.Width = Me.TextBox1.Width - 5
End If
L = Len(txt)
End Sub
[CENTER][B]بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
[COLOR=#0000ff]مشکلات دیگران، روزی مشکلات ما هم خواهد شد[/COLOR][/B][COLOR=#ff0000][B][FONT=arial][/FONT][/B][/COLOR]
[/CENTER] -
سلام ویژگی autosize را روی false و ویژگی textalign را روی fmtextalignright قرار داده و از کد ذیل استفاده کنید
کد PHP:public l as integer
private sub textbox1_change()
dim txt as variant
txt = textbox1.text
if (l < len(txt)) then
me.textbox1.left = me.textbox1.left - 5
me.textbox1.width = me.textbox1.width + 5
else
me.textbox1.left = me.textbox1.left + 5
me.textbox1.width = me.textbox1.width - 5
end if
l = len(txt)
end sub
شاید باید نمونه میگذاشتم تا هدفم بیشتر مشخص بشه
و سوال دیگر اینکه فرمول if شما چرا اصلا وارد محدوده else نمی شود؟فایل های پیوست شدهکامنت
-
حالا شما بایستی عرض اولیه تکس باکس را کوچک در نظر بگیرین
و یا اگر میخواهین عرض اولیه مثلا 30px داشته باشین بایستی کد بالا را در داخل یک if گذاشته که در صورت تجاوز کردن تعداد کاراکتر ها از یک مقدار خاص فرآیند کوچک و بزرگ شدن تکس باکس انجام شود[CENTER][B]بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
[COLOR=#0000ff]مشکلات دیگران، روزی مشکلات ما هم خواهد شد[/COLOR][/B][COLOR=#ff0000][B][FONT=arial][/FONT][/B][/COLOR]
[/CENTER]کامنت
کامنت