@msdn=http://msdn.microsoft.com/en-us/library/windows/desktop/bb787601%28v=vs.85%29.aspx @pinvoke=http://pinvoke.net/$$$.htm Summary: The ShowScrollBar API !!!!C# [DllImport("user32.dll")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool ShowScrollBar(IntPtr hWnd, int wBar, [MarshalAs(UnmanagedType.Bool)] bool bShow); !!!!User-Defined Types: None. !!!!Notes: For reference: SB_HORZ = 0 SB_VERT = 1 SB_CTL = 2 SB_BOTH = 3 !!!!Alternative Managed API: Do you know one? Please contribute it! !!!!VB Signature: Private Declare Function ShowScrollBar Lib "user32" (ByVal hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) As Long !!!!Tips & Tricks: http://www.vb-helper.com/howto_show_hide_text_scrollbar.html http://www.vb-helper.com/howto_show_hide_both_scrollbars.html !!!Sample Code: Title: Show a TextBox's vertical scrollbar only when it is necessary Keywords: scrollbar, show, hide, TextBox Categories: Controls When the form loads, set a hidden PictureBox's Font property to match the TextBox's. In the TextBox's Change event handler, use the PictureBox's TextHeight function to see how tall the text is. If the text is too big to fit in the TextBox, we need to display the scrollbar. If the need for the scrollbar has changed, use the ShowScrollBar API function to show or hide it. Private m_ScrollBarVisible As Boolean Private Declare Function ShowScrollBar Lib "user32" (ByVal _ hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) _ As Long Private Const SB_VERT = 1 Private Sub Form_Load() ' Make picHidden use the TextBox's font. picHidden.Font = txtValue.Font ' Perform the initial startup check. txtValue_Change End Sub Private Sub txtValue_Change() Dim needs_scrollbar As Boolean ' See if we need the scrollbar. needs_scrollbar = _ picHidden.TextHeight(txtValue.Text) > _ txtValue.Height - 60 ' See if the need has changed. If needs_scrollbar <> m_ScrollBarVisible Then ' Show or hide the scrollbar. m_ScrollBarVisible = needs_scrollbar ShowScrollBar txtValue.hwnd, SB_VERT, _ m_ScrollBarVisible End If End Sub Documentation: ShowScrollBar@msdn on MSDN Edit by Dave 2012-09-11 d_a__v___e@hotmail.com I had a lot of trouble with the above VB signature on a w7 vs2010 VM giving imbalanced stack errors, eventually got this working, Signature: <DllImport("user32")> _ Public Shared Function ShowScrollBar(ByVal hWnd As System.IntPtr, ByVal wBar As Integer, ByVal bShow As Boolean) As Boolean End Function Variables: Private Const SB_VERT As Integer = 1 Dim mytrue As Boolean = True Dim hWnd1 As IntPtr hWnd1 = Me.ListView1.Handle.ToInt32 Call: Call ShowScrollBar(hWnd1, SB_VERT, mytrue)
Edit user32.ShowScrollBar
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.