• Textbox tự xuống dòng khi nhập full height
  • Textbox tự xuống dòng khi nhập full height

    tuanta1986 > 20-09-20, 11:01 PM

    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!
  • RE: Textbox tự xuống dòng khi nhập full height

    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!

    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.
  • RE: Textbox tự xuống dòng khi nhập full height

    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.

    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.
  • RE: Textbox tự xuống dòng khi nhập full height

    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.

    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 
  • RE: Textbox tự xuống dòng khi nhập full height

    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 

    E cảm ơn bác. Bác cho e hỏi thêm một chút. E nhập dữ liệu vào text box, quá một màn hình hiển thị, thì khi gõ phím bất kì vào đoạn tiếp theo nó cứ bị nhảy lên đầu text box, rất khó khăn trong việc nhập liệu. E tìm trong properties của textbox, thử từng cái mà vẫn k được.

    https://drive.google.com/file/d/1F540fYs...Vb-zU/view