Jump to content

Recommended Posts

Posted

Thank you M23,

I have a better understanding now. This is a better idea, and if I don't misunderstand, it will save some resources as this function will not check every time if there is an ongoing edit process.

I successfully implemented your function, this way :
 

Func DeleteRow()
    If _GUIListViewEx_EditProcessActive() <> 0 Then
        StopHotkeys()
        Send("{DELETE}")
        Return
    EndIf
    If _GUICtrlListView_GetSelectedCount($iIDListView) > 0 Then
        ; My delete code
    Else
        ; Error case
    EndIf
EndFunc

The only thing that bothers me is that I need to manually send the 'DELETE' key to my GUI. Otherwise, the first 'DELETE' keypress will not delete a char in the edit field.

 

PS : The function you typed in your example doesn't match the function in your UDF ( _GUIListViewEx_EditProcess() -> _GUIListViewEx_EditProcessActive() ).

May the force be with you.

Open AutoIt Documentation within VS Code

  • Moderators
Posted

ValentinM,

Quote

This is a better idea

Thanks!

Quote

 it will save some resources as this function will not check every time if there is an ongoing edit process

Correct - which I why I went down that route.

As to the Delete key problem - how are you setting the HotKey to fire the DeleteRow function? Are you using modifiers or just the plain Delete key?

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

 

Posted (edited)

I don't know what you call "modifiers" so I will try to go a bit deeper in details to be clear.

I have two functions that manages my hotkeys, StartHotkeys() and StopHotkeys().
So the only thing I do to get my Hotkeys firing my functions is for example :

HotKeySet("{DELETE}", "DeleteRow")

And sometimes in the app, I don't want the Hotkeys to be on (ie. when a file is loading, if my GUI doesn't have the focus,...), so when it happens I use StopHotkeys() that basically does the same thing without calling a function.

HotKeySet("{DELETE}")

 

Did I answer you correctly?

EDIT : Just googled "modifiers" and seems like it's just like pressing "Shift" or "Ctrl"... So I am not using modifiers for deleting rows.

Edited by ValentinM
LMGTFY

May the force be with you.

Open AutoIt Documentation within VS Code

  • Moderators
Posted

ValentinM,

Quote

 I am not using modifiers

Which is what I suspected and why I asked. If you were to use modifiers for your HotKey than you would be able to use the simple {DELETE} key within the edit. That is why the modifiers exist.

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

 

Posted (edited)

I have a working example so far with the only added feature being sorting by columns which is nice. So far, so good.

The listview data is being pulled in from an already created array and is working successfully.

Since this listview data is being pulled in from an array with varying numbers of rows, is there a relatively easy way to add alternating colour to the rows?

Like a simple grey, white, grey, white... alternating row background colour to make it easier to read.

Thank you for your time.

Edited by WildByDesign
  • Moderators
Posted

WildByDesign,

You can set alternating colour rows in native ListViews (created using GUICtrlCreateListView) as follows:

; Create the ListView
$cListView = GUICtrlCreateListView(................)
; Now set the required backcolour for the ListView (obviously change the colour as you wish):
GUICtrlSetBkColor($cListView, 0xFF0000)
; Then tell the ListView to use alternating row colours
GUICtrlSetBkColor($cListView, $GUI_BKCOLOR_LV_ALTERNATE)

; And then when you create each ListViewItem set their colour to the required alternate colour
GUICtrlCreateListViewItem($sItemText, $cListView)
GUICtrlSetBkColor(-1, 0x00CC00)

Obviously you cannot then use my UDF to alter the colours of the ListView - you just have to leave Windows to deal with it!

If you use a UDF-created ListView (created using _GUICtrlListView_Create) then you would have to use the UDF to colour the rows, but it becomes very complex. So I would recommend that you stick to the native control if you can.

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

 

Posted
1 hour ago, Melba23 said:

You can set alternating colour rows in native ListViews (created using GUICtrlCreateListView) as follows:

Thank you for your time, M23. I appreciate it. I've actually used a few of your UDF's for years now but I am relatively new to the forum.

I tried using GUICtrlCreateListViewItem for the alternating colour rows following the example from AutoIT docs, but it was unsuccessful. I think the problem is that I am not using GUICtrlCreateListViewItem for my ListView. My array is already created earlier in the script and is brought into the ListView via _GUIListViewEx_ReadToArray. It's working very well, but I just wish for the ability to have the alternating colour rows.

  • Moderators
Posted

WildByDesign,

I do not understand the above. _GUIListViewEx_ReadToArray creates an array from the content of an existing ListView to correctly initialise the content within the UDF. How does your data get into the ListView so that the function can read it if you do not create the items at some point?

Perhaps posting the lines of your script referring to the ListView creation, loading and initialisation would be helpful in clarifiying what is happening.

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

 

  • Moderators
Posted

WildByDesign,

Actually you can apply the correct style to the ListView content without using GUICtrlCreateListViewItem. AutoIt kindly stores the ControlID of the row in the "parameter" value of each row within a native ListView - so all you have to do is loop through them as shown in this example:

#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>

#include "GUIListViewEx_Mod.au3"

; Create GUI
$hGUI = GUICreate("LVEx Example", 640, 510)

; Create ListView
$cListView = GUICtrlCreateListView("Tom|Dick|Harry", 10, 40, 300, 300, $LVS_SHOWSELALWAYS)
_GUICtrlListView_SetExtendedListViewStyle($cListView, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_CHECKBOXES))
_GUICtrlListView_SetColumnWidth($cListView, 0, 93)
_GUICtrlListView_SetColumnWidth($cListView, 1, 93)
_GUICtrlListView_SetColumnWidth($cListView, 2, 93)
GUICtrlSetBkColor($cListView, 0xFF0000) ; Set ListView back colour <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
GUICtrlSetBkColor($cListView, $GUI_BKCOLOR_LV_ALTERNATE) ; Set up alternate line colouring <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

; Create array and fill listview
Global $aLV_List[10]
For $i = 0 To UBound($aLV_List) - 1
    $aLV_List[$i] = "Tom " & $i & "|Dick " & $i & "|Harry " & $i
    GUICtrlCreateListViewItem($aLV_List[$i], $cListView)
Next

; Now set up alternate line colour <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
For $i = 0 To _GUICtrlListView_GetItemCount($cListView) -1
    GUICtrlSetBkColor(_GUICtrlListView_GetItemParam($cListView, $i), 0x00CC00)
Next

; Initiate LVEx
$iLV_Index = _GUIListViewEx_Init($cListView, $aLV_List)

GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
    _GUIListViewEx_EventMonitor()
WEnd

I hope that helps.

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

 

Posted
2 hours ago, Melba23 said:

Actually you can apply the correct style to the ListView content without using GUICtrlCreateListViewItem. AutoIt kindly stores the ControlID of the row in the "parameter" value of each row within a native ListView - so all you have to do is loop through them as shown in this example:

; Now set up alternate line colour <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
For $i = 0 To _GUICtrlListView_GetItemCount($cListView) -1
    GUICtrlSetBkColor(_GUICtrlListView_GetItemParam($cListView, $i), 0x00CC00)
Next

This great trick that you came up with did the magic that I needed. Thank you. And I really appreciate your time. Time is valuable, and I am thankful.

 

There is only one last thing that I need help with, if you have a moment, before my ListView is complete. Is there a way (possibly by adding to your same example script from your post above) to change the header text colour?

I don't need to change the header background colour, although maybe you can add that in there for the sake of the example. I am still learning a lot about AutoIt and having those smaller example scripts really helps to understand what is doing what to achieve the goal.

  • Moderators
Posted

WildByDesign,

Quote

Is there a way (possibly by adding to your same example script from your post above) to change the header text colour?

Of course there is!

But it gets a bit more complicated as we have to use user-drawn colours for the whole ListView. Here is an expanded version of the above example showing how you can do it:

#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>

#include "GUIListViewEx_Mod.au3"

; Determine row back colours
Global $iEvenBkCol = "0x00FFFF"
Global $iOddBkCol = "0xFEFEFE"

; Create GUI
$hGUI = GUICreate("LVEx Example", 640, 510)

; Create ListView
$cListView = GUICtrlCreateListView("Tom|Dick|Harry", 10, 40, 300, 300, $LVS_SHOWSELALWAYS)
_GUICtrlListView_SetExtendedListViewStyle($cListView, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_CHECKBOXES))
_GUICtrlListView_SetColumnWidth($cListView, 0, 93)
_GUICtrlListView_SetColumnWidth($cListView, 1, 93)
_GUICtrlListView_SetColumnWidth($cListView, 2, 93)

; Create data array and fill listview
Global $aLV_List[10]
For $i = 0 To UBound($aLV_List) - 1
    $aLV_List[$i] = "Tom " & $i & "|Dick " & $i & "|Harry " & $i
    GUICtrlCreateListViewItem($aLV_List[$i], $cListView)
Next

; Initiate LVEx
$iLV_Index = _GUIListViewEx_Init($cListView, $aLV_List, Default, Default, True, 16 + 32)

; Retrieve existing colour array - content will be overwritten in the function
Global $aLVCol = _GUIListViewEx_ReturnArray($iLV_Index, 2)
; And load it
_LoadColour()

; Create header data array
Global $aHdrData[][] = [["Blk Tom", "Red Dick",  "Blk Harry"], _    ; As colour is enabled, these will replace original titles
                        ["",        "0xFF0000;", ""], _             ; Cols 0 & 3 will use default colours
                        ["",        "",          ""], _             ; All cols text editable
                        [0,         0,           0]]                ; All cols resizeable
; And load it
_GUIListViewEx_LoadHdrData($iLV_Index, $aHdrData)

_GUIListViewEx_MsgRegister()

GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
    $sRet = _GUIListViewEx_EventMonitor()
    ; Check for row drag/drop
    If $sRet <> "" And @extended = 4 Then
        ; If so, reset row colours
        _LoadColour()
    EndIf

WEnd

Func _LoadColour()

    Local $sColData

    ; Alternate row colour
    For $i = 0 To UBound($aLVCol) - 1
        ; Set required colour for row
        If BitAND($i,1) Then
            $sColData = ";" &  $iOddBkCol
        Else
            $sColData = ";" &  $iEvenBkCol
        EndIf
        ; Fill row
        For $j = 0 To UBound($aLVCol, 2) - 1
            $aLVCol[$i][$j] = $sColData
        Next
    Next
    ; Load colour data array
    _GUIListViewEx_LoadColour($iLV_Index, $aLVCol)

EndFunc

Please ask if you have any questions.

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

 

Posted
3 hours ago, Melba23 said:

But it gets a bit more complicated as we have to use user-drawn colours for the whole ListView. Here is an expanded version of the above example showing how you can do it:

This is fantastic and works very well. Your example also helped me learn more about how it works, so I appreciate that.

There is only one problem. This example does not work with 64-bit binaries. Also, I tried 3 or 4 other examples from throughout the forum regarding changing the header colors (particularly the text color of headers) and most of them also did not work with 64-bit binaries.

The only one example that did work great with 64-bit binaries, interestingly, goes back 13 years ago from a user named rover:

 

It is really important that I have 64-bit binaries. So I think, at least for the time being, I will have to use rover's method. I understand from past topics that it may not be the best or safest method, but from all of my testing it has been quite solid.

As always, I am thankful for your time and I appreciate the examples that you have shared. I did learn quite a bit thanks to you plus the fact that I continue to use several of your other UDF's even today. Cheers!

  • Moderators
Posted (edited)

WildByDesign,

Yes, header colour and 64-bit do not work nicely together - sorry about that. There is a post somewhere in this thread where someone more knowledgeable than myself in these matters explains why. But rover's code was usually pretty solid so using it should not give you any problems.

M23

Edit: 

His final comment: "This is not necessarily completely trivial" is a wonderful piece of understatement!

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

 

Posted

Hello,

I think I found an issue. If I drag & drop the first column elsewhere, the edit input field linked to it will stay at the first column location. I noticed it while adding a column to my file, and trying to edit some cells. I don't know how I could miss that before now.

This is what I get for example when I double-click on the first row, straight under the "hi" column. Take a look at the input field width, which is exactly the same as "hi" column one.

Spoiler

image.png.c801012ec9409799452d51bc36353a6d.png

May the force be with you.

Open AutoIt Documentation within VS Code

  • Moderators
Posted (edited)

ValentinM,

Good spot! Looking into it.

M23

Edit: Found the problem - _GUICtrlListView_GetSubItemRect requires a 1-based index - and so when SubItem 0 is passed it returns the coordinates for the whole item. Thus even when the columns are reordered it gives an X-value of 0 for SubItem 0. Now to work out how to get around this!

Edit 2: Try this Beta: 

Edited by Melba23
Beta code removed

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

 

Posted (edited)

Melba23, thank you for your reply.

Unfortunately, your beta doesn't fix the issue on my side. I don't notice any change in the behaviour I described yesterday, except that if there are too many columns in the listview to fit on the GUI (so you have the scrollbar at the bottom), there is another issue.

For example, if you have "Col 0, Col 1, Col 2, Col 3,..." and many others, and you try to move Col 2 to Col 0 then you will have Col 2, Col 0, Col 1, Col 3,...

But then, if you try to edit "Col 0", it will automatically "scroll" the listview so you will only see "Col 0, Col 1, Col 3,..." and you have to scroll back to "Col 2" to see it. And each time you want to edit "Col 0", it will do that scroll. And the edit field is still located on "Col 0".

 

I don't know if I am very clear so if needed I can try to reformulate or even take screenshots.

Edited by ValentinM

May the force be with you.

Open AutoIt Documentation within VS Code

  • Moderators
Posted

ValentinM,

Oh dear, it worked nicely for for me - I will take another look. And also at the horizontal scrolling problem - I think I know why that happens (fingers firmly crossed).

But I am very busy today (looking after my grandchildren) so I will not have time until tomorrow - please be patient.

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

 

  • Moderators
Posted (edited)

ValentinM,

Good day yesterday with the nietos and I think I have a new solution for you today - the scrolling problem was exactly what I thought it might be and the solution was pretty easy to code.

Here is a new Beta: GUIListViewEx_Mod.au3

And the example I have been using to test which works perfectly for me: GLVEx_Ex.au3

If you still have problems, please let me see the code you are using to create, load and initialise your ListView to see if I can spot the reason.

M23

Edit: Found an edge case in testing - working on it.

Edit 2: New Beta uploaded.

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

 

Posted

Hello Melba23, it seems to work wonderfully.

Your work is very useful to me, and your bug fixing work is just as useful. I wish I could better understand how your code works and maybe sometimes give you some bugfixing snippets in case I find any issue in the future, but I unfortunately just don't have the time to study your entire code - I'm just using it.

Thank you very much !

May the force be with you.

Open AutoIt Documentation within VS Code

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
  • Recently Browsing   0 members

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