Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 03/15/2025 in all areas

  1. I have been creating few controls with round corners for awhile for my own needs and I felt it was time to make an UDF and share it with the community. The idea behind this UDF is to use essentially simple basic AutoIt GUI functions. I did not want to embark in GDI+ to create the controls. I wanted to be easy to use with enough features that it would answer most requirements. The functions contained in the UDF : _RGUI_RoundLabel _RGUI_RoundButton _RGUI_RoundInput _RGUI_RoundEdit _RGUI_RoundGroup _RGUI_RoundScrollBar _RGUI_ScrollBarSet _RGUI_ScrollBarDestroy _RGUI_RoundRect _RGUI_DrawLine _RGUI_ButtonPress _RGUI_ButtonReset Version 2025-04-06 * Solved an issue where scroll bar and control are not in the same GUI child * Added 4th example on how to use scrollbar with ListView over a background generated by GDI+ Version 2025-03-28 * Added support to auto-size label and button controls (by passing -1 for width and/or height) * Removed the requirement to pass handle of the GUI to _RGUI_RoundGroup * Added 3rd example on how to use scrollbar with RichEdit Version 2025-03-21 * Added support of round corner scrollbar * Added a 2nd example on how to use scrollbar with ListBox Version 2025-03-15 * Basic framework for the UDF Here an example of what could be done with the UDF : If you feel there should be new controls, I will consider adding them to the UDF. RoundGUI.zip
    3 points
  2. Not having delved too deeply into your code, I was wondering if ByRef could be your solution? Pass an array to a function and process it without having to return the modified array?
    1 point
  3. @Nine saying the same but with different wording😀 for sure its in the area of lowlevel messaging and hooking. With the limiterd amount of information how the swipe driver is sending ctrl and left its hard to guess which messages to hook.
    1 point
  4. In fact if you set the mask to only scroll events : _GUICtrlRichEdit_SetEventMask($hRichEdit, $ENM_SCROLLEVENTS) then the WM_NOTIFY message proc can be as simple as : Func WM_NOTIFY($hWnd, $iMsg, $wParam, $lParam) Local $tFilter = DllStructCreate($tagMSGFILTER, $lParam) If $tFilter.hwndFrom = $hRichEdit Then _GUICtrlRichEdit_ScrollLines($tFilter.hwndFrom, $tFilter.wParam ? 1 : -1) Return $GUI_RUNDEFMSG EndFunc ;==>WM_NOTIFY
    1 point
  5. @TheAutomator glad it helped you. By the way, as you don't want to add scrollbars (in your richedit control styles) then you can simplify the mask, keeping only $ENM_SCROLLEVENTS to take care of notifications for mouse wheel events : ; _GUICtrlRichEdit_SetEventMask($edit, BitOR($ENM_SCROLL, $ENM_SCROLLEVENTS)) _GUICtrlRichEdit_SetEventMask($edit, $ENM_SCROLLEVENTS) You'll find the answer in this thread and also in that one No problem. If you prefer to code with 'if' it will give the same result
    1 point
×
×
  • Create New...