Jump to content

How come: Slow ListView when using tabs [SOLVED on page 2]


dirty
 Share

Recommended Posts

Well don't I feel like a big bucket of win...

#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
 
$WinTitle = "whatever"
$MainGUI = GUICreate($WinTitle, 995, 765)
$TabControl = GUICtrlCreateTab (0,0,995,750)
$Tab = GUICtrlCreateTabItem ("Progect Managment")
$SearchAll = GUICtrlCreateButton("  Display all available projects", 10, 330, 480, 35)
$Results = _GUICtrlListView_Create($MainGUI, "1_________|2|3", 505, 20, 480, 325, BitOR($LVS_REPORT, $LVS_SINGLESEL, $LVS_SHOWSELALWAYS, $WS_BORDER))
$iExStyle = $LVS_EX_DOUBLEBUFFER
_GUICtrlListView_SetExtendedListViewStyle($Results, $iExStyle, $iExStyle)
GUICtrlCreateTabItem("Next Tab...")
GUICtrlCreateTabItem("One More...")
GUICtrlCreateTabItem("Etc...")
GUICtrlCreateTabItem("")
 
GUISetState(@SW_SHOW, $MainGUI)
 
Local $GUIGetMsg
While 1 ;Main Loop
    $GUIGetMsg = GUIGetMsg()
    Switch $GUIGetMsg
        Case $GUI_EVENT_CLOSE
            ExitLoop
        Case $SearchAll
            _GUICtrlListView_BeginUpdate($Results)
            for $i = 1 to 1000 Step 1
                    _GUICtrlListView_AddItem($Results, "test" & $i)
            Next
            _GUICtrlListView_EndUpdate($Results)
        Case $TabControl
            Switch GUICtrlRead($TabControl)
                Case 0
                    ; project management
                    _WinAPI_ShowWindow($Results, @SW_SHOW)
                Case Else
                    ; other tabs
                    _WinAPI_ShowWindow($Results, @SW_HIDE)
            EndSwitch
    EndSwitch
WEnd

Built-in ListView controls are a PITA. Well so are user controlled ones, but offer much more flexibility. I'm not ever sure Begin/EndUpdate() work on built-in listviews.

Edited by wraithdu
Link to comment
Share on other sites

  • Moderators

nitekram,

Bingo! :D

I was not using the UDF _GUICtrlListView_AddItem function and so it still flickered. :oops:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

  • Moderators

All,

So we use the UDF ListView throughout: :D

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>

$WinTitle = "whatever"

$MainGUI = GUICreate($WinTitle, 995, 765, Default, Default)

$TabControl = GUICtrlCreateTab(0, 0, 995, 750)
$Tab = GUICtrlCreateTabItem("Progect Managment")
$SearchAll = GUICtrlCreateButton("  Display all available projects", 10, 330, 480, 35)
$Results = _GUICtrlListView_Create($MainGUI, "", 505, 20, 480, 325, BitOR($LVS_REPORT, $WS_BORDER))
_GUICtrlListView_AddColumn($Results, "1", 50)
_GUICtrlListView_AddColumn($Results, "2", 50)
_GUICtrlListView_AddColumn($Results, "3", 300)

$Tab2 = GUICtrlCreateTabItem("tab2")
GUICtrlCreateTabItem("")

GUISetState(@SW_SHOW, $MainGUI)

While 1 ;Main Loop

    $GUIGetMsg = GUIGetMsg()
    If $GUIGetMsg = $GUI_EVENT_CLOSE Then ExitLoop
    If $GUIGetMsg = $SearchAll Then
        _GUICtrlListView_BeginUpdate($Results)
        For $i = 1 To 1000 Step 1
            _GUICtrlListView_AddItem($Results, "test" & $i, 0)
        Next
        _GUICtrlListView_EndUpdate($Results)
    EndIf
WEnd

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

  • Moderators

wraithdu,

Forgot my own tutorial! :D

M23

Edit:

And this is my final post on the subject! :oops:

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>

$WinTitle = "whatever"
$iLastTab = 0

$MainGUI = GUICreate($WinTitle, 995, 765, Default, Default)

$TabControl = GUICtrlCreateTab(0, 0, 995, 750)
$Tab = GUICtrlCreateTabItem("Progect Managment")
$SearchAll = GUICtrlCreateButton("  Display all available projects", 10, 330, 480, 35)
$Results = _GUICtrlListView_Create($MainGUI, "", 505, 20, 480, 325, BitOR($LVS_REPORT, $WS_BORDER))
ConsoleWrite($Results & @CRLF)
_GUICtrlListView_AddColumn($Results, "1", 50)
_GUICtrlListView_AddColumn($Results, "2", 50)
_GUICtrlListView_AddColumn($Results, "3", 300)

$Tab2 = GUICtrlCreateTabItem("tab2")
GUICtrlCreateTabItem("")

GUISetState(@SW_SHOW, $MainGUI)

While 1 ;Main Loop

    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            ExitLoop
        Case $SearchAll
            _GUICtrlListView_BeginUpdate($Results)
            For $i = 1 To 1000 Step 1
                _GUICtrlListView_AddItem($Results, "test" & $i, 0)
            Next
            _GUICtrlListView_EndUpdate($Results)
        Case $TabControl
            ; Check which Tab is active
            $iCurrTab = GUICtrlRead($TabControl)
            ConsoleWrite($iCurrTab & @CRLF)
            ; If the Tab has changed
            If $iCurrTab <> $iLastTab Then
                ; Show/Hide controls as required
                Switch $iCurrTab
                    Case 0
                        ControlShow($MainGUI, "", $Results)
                    Case 1
                        ControlHide($MainGUI, "", $Results)
                EndSwitch
                ; Store the value for future comparisons
                $iLastTab = $iCurrTab
            EndIf
    EndSwitch

WEnd
Edited by Melba23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

The flicker issue is caused by GUICtrlCreateListViewItem() repainting per item, not GUICtrlCreateListView()

either use UDF Add/Insert functions with the native LV, or set WS_CLIPCHILDREN for gui.

If $WS_CLIPCHILDREN with GUICreate() causes paint issues for other controls,

then it could be temporarily set when items added/deleted

If using UDF Add/Insert functions

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ListViewConstants.au3>
#include <GuiListView.au3>
$WinTitle = "whatever"
$MainGUI = GUICreate($WinTitle, 995, 765, Default, Default)
$TabControl = GUICtrlCreateTab(0, 0, 995, 750)
$Tab = GUICtrlCreateTabItem("Progect Managment")
$SearchAll = GUICtrlCreateButton("  Display all available projects", 10, 330, 480, 35)
$Results = GUICtrlCreateListView("1_________|2|3", 505, 24, 480, 325)
$iExStyle = $LVS_EX_DOUBLEBUFFER
_GUICtrlListView_SetExtendedListViewStyle($Results, $iExStyle, $iExStyle)
GUICtrlCreateTabItem("Next Tab...")
GUICtrlCreateTabItem("One More...")
GUICtrlCreateTabItem("Etc...")
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW, $MainGUI)
While 1 ;Main Loop
    Local $GUIGetMsg
    $GUIGetMsg = GUIGetMsg()
    If $GUIGetMsg = $GUI_EVENT_CLOSE Then ExitLoop
    If $GUIGetMsg = $SearchAll Then
  ;_GUICtrlListView_BeginUpdate($Results)
  _GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($Results)) ;use with UDF items only: _GUICtrlListView_Add/Insert
  ;don't use LV handle to delete native GUICtrlCreateListViewItem() items
  ;use UDF item functions, otherwise you have a growing memory leak each time you delete native items
  For $i = 1 To 1000 Step 1
   _GUICtrlListView_AddItem($Results, "test" & $i, 0)
        Next
  ;_GUICtrlListView_EndUpdate($Results)
    EndIf
WEnd

If using GUICtrlCreateListViewItem() with $WS_CLIPCHILDREN on main gui

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ListViewConstants.au3>
#include <GuiListView.au3>
$WinTitle = "whatever"
;$MainGUI = GUICreate($WinTitle, 995, 765, Default, Default, BitOR($GUI_SS_DEFAULT_GUI, $WS_CLIPCHILDREN))
$MainGUI = GUICreate($WinTitle, 995, 765, Default, Default)
$TabControl = GUICtrlCreateTab(0, 0, 995, 750)
$Tab = GUICtrlCreateTabItem("Progect Managment")
$SearchAll = GUICtrlCreateButton("  Display all available projects", 10, 330, 480, 35)
$Results = GUICtrlCreateListView("1_________|2|3", 505, 24, 480, 325, -1, $WS_EX_CLIENTEDGE);removes $WS_EX_TRANSPARENT
$iExStyle = $LVS_EX_DOUBLEBUFFER
_GUICtrlListView_SetExtendedListViewStyle($Results, $iExStyle, $iExStyle)
GUICtrlCreateTabItem("Next Tab...")
GUICtrlCreateTabItem("One More...")
GUICtrlCreateTabItem("Etc...")
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW, $MainGUI)
$aStyle = GUIGetStyle($MainGUI) ;must be run after gui shown
While 1 ;Main Loop
    Local $GUIGetMsg
    $GUIGetMsg = GUIGetMsg()
    If $GUIGetMsg = $GUI_EVENT_CLOSE Then ExitLoop
    If $GUIGetMsg = $SearchAll Then
  GUISetStyle(BitOR($aStyle[0], $WS_CLIPCHILDREN), -1, $MainGUI)
  ;_GUICtrlListView_BeginUpdate($Results)
  _GUICtrlListView_DeleteAllItems($Results) ;native GUICtrlCreateListViewItem() items only
  ;don't use LV handle to delete native GUICtrlCreateListViewItem() items
  ;use UDF item functions, otherwise you have a growing memory leak each time you delete native items
  For $i = 1 To 1000 Step 1
            GUICtrlCreateListViewItem("test" & $i, $Results)
        Next
  ;_GUICtrlListView_EndUpdate($Results)
  GUISetStyle($aStyle[0], -1, $MainGUI)
    EndIf
WEnd

I see fascists...

Link to comment
Share on other sites

Some of the _GuiCtrlListView_* code is an interesting read. Many functions like the Delete functions make a distinction when passed a handle (UDF) versus a control ID (native). It will then use either UDF or native functions to delete the items to prevent memory leaks. Nice to know :D

Link to comment
Share on other sites

  • Moderators

rover

WS_CLIPCHILDREN for gui

I had tried using WS_CLIPSIBLINGS on the control itself - obviously to no avail. Any chance of one of your excellent examples to show the different effects of these 2 styles? I have never been too sure when to use them.

As you can see, I am hoping flattery still works in the modern world! :D

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

  • Moderators

dirty,

I doubt you will get any joy from an update - AutoIt has to do so much checking for tabs it seems unlikely that the problem can be easily solved. :D

I will give up tabs for now

Why? You now have several perfectly good examples of how to make your ListView work within a Tab structure. It just requires a bit of effort on your part to add a few lines of code to adjust styles or check the visible tab. :oops:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Just my 2 cents:

@dirty, change this line:

$MainGUI = GUICreate($WinTitle, 995, 765,Default,Default)

to this

$MainGUI = GUICreate($WinTitle, 995, 765, -1, -1,BitOR($GUI_SS_DEFAULT_GUI,$WS_CLIPCHILDREN))
Link to comment
Share on other sites

YAY THE ISSUE IS SOLVED WITH

$MainGUI = GUICreate($WinTitle, 995, 765, -1, -1,BitOR($GUI_SS_DEFAULT_GUI,$WS_CLIPCHILDREN))

Problem with this solution is that many of my GUI controls are not shown until i move my mouse over them.

Also i have a picture drawn on my GUI. Using tabs, picture is not drawn unless tabs are switched even when using your example.

Your way solves the problem with updating guictrlcreatelistview without flickering which was the one issue i posted this topic for, but the issue with picture came up in the process.

Here is how picture is drawn. Maybe you can look into the picture function and tell what needs to be corrected.

Func DrawPicture();Drap picture
Local $PATHCheck,$PATHEMPTY,$PATHFILEERROR,$PATH,$IMG,$W,$H
Local $ImageWidth,$ImageHeight,$AreaWidth,$AreaHeight,$Scale,$NewImageWidth,$NewImageHeight
GUICtrlDelete($Image) ;delete any previous images
$PATHCheck = GUICtrlRead($MainImagePath) ;returns full image path
$PATHEMPTY = (@TempDir & "\NoPicture.jpg")
$PATHFILEERROR = (@TempDir & "\PictureError.jpg")
If $PATHCheck = "" Then ;No Image
  $PATH = (@TempDir & "\NoPicture.jpg")
ElseIf $PATHCheck > "" And FileExists($PATHCheck) = 0 Then
  $PATH = (@TempDir & "\PictureError.jpg")
ElseIf $PATHCheck > "" And FileExists($PATHCheck) = 1 Then
  $PATH = $PATHCheck
EndIf
If Not @error Then
  _GDIPlus_Startup()
  $IMG = _GDIPlus_ImageLoadFromFile($PATH)
  $W = _GDIPlus_ImageGetWidth($IMG)
  $H = _GDIPlus_ImageGetHeight($IMG)
  _GDIPlus_ImageDispose($IMG)
  _GDIPlus_Shutdown()
  ;MsgBox(0,$PATH,$W & @CRLF & $H) ;size of an amage
EndIf
$ImageWidth = $W
$ImageHeight = $H
$AreaWidth = 440
$AreaHeight = 325
$Scale = _Min($AreaWidth / $ImageWidth, $AreaHeight / $ImageHeight)
$NewImageWidth = $ImageWidth * $Scale
$NewImageHeight = $ImageHeight * $Scale
$Image = GUICtrlCreatePic($PATH, 505, 410, Round($NewImageWidth), Round($NewImageHeight)) ;This one is global
EndFunc   ;==>DrawPicture
Edited by dirty
Link to comment
Share on other sites

  • Moderators

dirty,

Problem with this solution is that many of my GUI controls are not shown until i move my mouse over them

Do you actually read the replies that are posted? :D

rover gave you the answer in his second example in post #27 above:

"If $WS_CLIPCHILDREN with GUICreate() causes paint issues for other controls, then it could be temporarily set when items added/deleted"

And the second example shows how to do it: :rip:

$aStyle = GUIGetStyle($MainGUI) ;must be run after gui shown <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

While 1 ;Main Loop
    
    Local $GUIGetMsg
    $GUIGetMsg = GUIGetMsg()
    If $GUIGetMsg = $GUI_EVENT_CLOSE Then ExitLoop
    If $GUIGetMsg = $SearchAll Then
        GUISetStyle(BitOR($aStyle[0], $WS_CLIPCHILDREN), -1, $MainGUI) ; <<<<<<<<<<<<<<<<<<<<
        _GUICtrlListView_DeleteAllItems($Results)
        For $i = 1 To 1000 Step 1
            GUICtrlCreateListViewItem("test" & $i, $Results)
        Next
        GUISetStyle($aStyle[0], -1, $MainGUI) ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    EndIf
    
WEnd

That should solve your problem. :oops:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

:D no i dont. I usually search for replies with code, that way i know a working solution is posted.

Kinda like yours :oops:

I do that because my knowledge of autoit language is limited and half the time worded solutions will make no since.

Do you think your solution make since to me ? No, but the code works and thats all i care about.

Sorry for being this way and thanks for the code replies.

Link to comment
Share on other sites

In the end: solutions produce issues.

This whole tab thing needs some work, it shouldn't work this way.

I thank all who tried to help but changing styles of the gui before during and after the process plus changing the way it behaves just ads up problems for future development.

Need 1 solid solution that will display all control items/draw pictures/update listview fast/etc as it would without tabs

Link to comment
Share on other sites

  • Moderators

dirty,

[rant]

This whole tab thing needs some work, it shouldn't work this way

But it does and you have to live with it. Are you volunteering to rewrite the core AutoIt code? :oops:

I thought not. So you have to deal with what Autoit currently offers - which is pretty good in the opinion of most users. :)

Need 1 solid solution that will display all control items/draw pictures/update listview fast/etc as it would without tabs

You have had a number of solutions offered to you in this thread that give you a result pretty close to what you require. If you consider them to be "problems for future development" then that is your problem and yours alone. :D

my knowledge of autoit language is limited

As is my patience with those who receive solutions to complex problems and then continue to moan. Please understand the this language is written and maintained by volunteers and those members of this forum who have responded to your thread are also volunteers. Both of these groups give of their own free time to create AutoIt and to offer help to others who use it. You are benefiting from both of these groups and all you seem to be able to do is complain that the results of neither of these groups are good enough for you. :rip:

Just accept that you are not going to get perfection - not even paid products give you that guarantee - and just be grateful that you have this wonderful free language to use and a forum community that has (at least until now) offered you help. A word to the wise - if you continue to act in the way you have been doing in this thread you may well find that you will no longer get the kind of support you have just received.

[/rant]

"click"

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

i am grateful and i dont complain. i simply say that posted solutions will make more problems as i continue making my thing.

Hopefully next autoit release will have this thing fixed and am sure i wont be a part of that.

I just think that that's a big issue where gui controls not working right when located under tabitems and it needed attention.

In the beginning i thought that the solution would be as simple as to set some autoit options or something else like that, but in the end it seemed like 1 solution produced problem for something else.

other than that its OK if my thing is limited to one GUI. after all i can make it bigger :D Problem is i dont know how big i can go.

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...