teet Posted September 21, 2010 Share Posted September 21, 2010 Hi, I have been suffered with this issue for quite a while. Basically when the main window is created with $WS_CLIPCHILDREN, the Edit control which is created inside a tab, will have trouble showing its scroll bars when I switch the tabs. The scroll bars will not show up until I move the mouse upon the edit control. I have tried several creation style and exstyle combination for both the window and the edit controls. No luck. Any suggestions for this scroll bar display issue? Thanks in advance! My code: #include <GUIConstants.au3> #include <WindowsConstants.au3> #include <EditConstants.au3> GUICreate("Tabs",1024,700, -1, -1, $WS_MAXIMIZEBOX + $WS_MINIMIZEBOX + $WS_SIZEBOX + $WS_CLIPCHILDREN) GUISetFont(9, 300) $tab=GUICtrlCreateTab (10,10, 1000,677) $tabA=GUICtrlCreateTabitem ("Tab A") $edit1 = GUICtrlCreateEdit("", 20, 65, 370, 280, $WS_VSCROLL + $WS_HSCROLL + $ES_READONLY) $tabB=GUICtrlCreateTabitem ( "Tab B") $edit2 = GUICtrlCreateEdit("", 20, 65, 370, 280, $WS_VSCROLL + $WS_HSCROLL + $ES_READONLY) GUICtrlSetState(-1,$GUI_SHOW) GUISetState () While 1 $msg = GUIGetMsg() If $msg = $GUI_EVENT_CLOSE Then ExitLoop Wend Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted September 21, 2010 Moderators Share Posted September 21, 2010 teet,Welcome to the AutoIt forum. As the $WS_CLIPCHILDREN style "Excludes the area occupied by child windows when drawing occurs within the parent window", it is hardly surprising that your edit controls do not redraw when required! So why use it in your script? What does it bring you? By the way, you should use BitOR when combining styles - look at the Setting Styles tutorial in the Wiki to see why. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
teet Posted September 21, 2010 Author Share Posted September 21, 2010 Melba, Thanks for your input! I'll use BitOR from now on I have a main window which is composed of three parts. 1) There are some icon buttons on top of the window. User can start/pause/stop the application by clicking the icon buttons. 2) In the middle area, an embeded IE object showing multiple website query result. 3) An edit control in the bottom logging the running status. If I don't use $WS_CLIPCHILDREN, all child windows(icon buttons, Edit control..) will redraw again and again each time the IE object is loading and rendering a page. I don't like this happened. It looks like the whole window keeps on refreshing. So I use $WS_CLIPCHILDREN when creating the main window. Everything works fine to me except the Edit's scroll bars Teet Link to comment Share on other sites More sharing options...
ArtArt Posted March 17, 2013 Share Posted March 17, 2013 (edited) Hi! - I have the same problem:I have a CRichEditCtrl on a CTabCtrl on a CDialog.I wish to be flickerless everything.So, both the dialog and the tab is created with WS_CLIPCHILDREN extra style.But my vertical scrollbar on the CRichEditCtrl does not update during scrolling with mouse.I had not found better solution than the following:void CFlickerlessRichEdit::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar){ SetScrollPos(SB_VERT, nPos, 0); CRichEditCtrl::OnVScroll(nSBCode, nPos, pScrollBar);} Edited March 17, 2013 by ArtArt Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted March 17, 2013 Moderators Share Posted March 17, 2013 ArtArt,That does not look like AutoIt syntax and this is the AutoIt forum. Are you sure you are posting in the correct place? M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
ArtArt Posted March 21, 2013 Share Posted March 21, 2013 You are right, sorry, I had the same problem in Visual C++. Do you want to remove it? :s Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted March 21, 2013 Moderators Share Posted March 21, 2013 ArtArt, No, we shall leave the posts as a warning to the unwary! M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now