tuanta1986 > 20-09-20, 11:01 PM
ongke0711 > 20-09-20, 11:21 PM
(20-09-20, 11:01 PM)tuanta1986 Đã viết: Bác nào có code giúp ô textbox trên form, khi nhập hết nội dung đến full height thì height tự động giãn xuống không ạ. E cảm ơn!
tuanta1986 > 21-09-20, 08:12 AM
(20-09-20, 11:21 PM)ongke0711 Đã viết:(20-09-20, 11:01 PM)tuanta1986 Đã viết: Bác nào có code giúp ô textbox trên form, khi nhập hết nội dung đến full height thì height tự động giãn xuống không ạ. E cảm ơn!
Có thực sự cần thiết tính năng này không bạn?
Khi thiết kế Form, các control trên đó có vị trí cố định, bố cục chuẩn, không thay đổi, nếu bạn thiết kế 1 textbox co giãn thì tất cả các control bên dưới nó, kế bên trái phải đều phải di chuyển, phân bố lại --> nhiều code hơn là code cho 1 textbox co giãn.
Trong Form nếu cần xem hết nội dung thì di chuyển chuột lên xuống, còn muốn hiển thị hết nội dung thì xem trong Report.
Có những cái không quan trọng thì bạn nên tiết kiệm code để ứng dụng hoạt động tối ưu hơn.
ongke0711 > 22-09-20, 04:12 PM
(21-09-20, 08:12 AM)tuanta1986 Đã viết: Cái form của e textbox nó nằm ở cuối cùng bác ạ, tại e vô tình thấy có bác có chia sẻ code này nhưng vì đã lâu nên link die, e thấy hay nên mới định cho vào.
Sub growTextBox(ctl As TextBox)
Const NOCHAR_LINE = 30 'Tong so ky tu 1 dong trong textbox
Const ORIGINAL_HEIGHT As Integer = 340 'Chieu cao cua textbox
Dim lineCount As Integer
Dim txtData As String
Dim txtLength As String
Dim noLines As Single 'So dong
txtData = Nz(ctl, "")
txtLength = Len(txtData)
If txtLength > NOCHAR_LINE Then
noLines = Int(txtLength / NOCHAR_LINE) + 1
ctl.Height = ORIGINAL_HEIGHT * noLines
Else
ctl.Height = ORIGINAL_HEIGHT
End If
End Sub
Private Sub TextBox1_AfterUpdate()
Call growTextBox(Me.TextBox1)
End Sub
tuanta1986 > 23-09-20, 11:51 AM
(22-09-20, 04:12 PM)ongke0711 Đã viết:(21-09-20, 08:12 AM)tuanta1986 Đã viết: Cái form của e textbox nó nằm ở cuối cùng bác ạ, tại e vô tình thấy có bác có chia sẻ code này nhưng vì đã lâu nên link die, e thấy hay nên mới định cho vào.
Nếu thiết kế như vậy thì dùng code đơn giản này, nó không hoàn toàn tăng chiều cao hợp lý (đẹp) nhưng đáp ứng nhu cầu của bạn.
Bạn tự thay đổi tham số: số ký tự tối đa trên 1 dòng của Textbox để nó tự nhảy xuống dòng và chiều cao của Textbox.
Mã PHP:Sub growTextBox(ctl As TextBox)
Const NOCHAR_LINE = 30 'Tong so ky tu 1 dong trong textbox
Const ORIGINAL_HEIGHT As Integer = 340 'Chieu cao cua textbox
Dim lineCount As Integer
Dim txtData As String
Dim txtLength As String
Dim noLines As Single 'So dong
txtData = Nz(ctl, "")
txtLength = Len(txtData)
If txtLength > NOCHAR_LINE Then
noLines = Int(txtLength / NOCHAR_LINE) + 1
ctl.Height = ORIGINAL_HEIGHT * noLines
Else
ctl.Height = ORIGINAL_HEIGHT
End If
End Sub
Gọi hàm:
Mã PHP:Private Sub TextBox1_AfterUpdate()
Call growTextBox(Me.TextBox1)
End Sub