Popular Post Nine Posted April 5, 2022 Popular Post Posted April 5, 2022 Many people wanted to see the content of an array inside another array using either _ArrayDisplay or _DebugArrayDisplay. Now it is possible with this UDF. But first I want to give my sincere congratulations to those who have invested long efforts to create ArrayDisplayInternals.au3 (Melba23, jpm, LarsJ, pixelsearch). Most of the code and ingenuity come from those authors. I would say over 90% of the code comes from the original UDF. With this new UDF, you can dig into a tree of arrays inside arrays as deep as you want. There is no limit on the levels of recursion. When you click on an {array} cell, it will bring you a new window (either _ArrayDisplay or _DebugArrayDisplay depending what was called first). Although there is no limit on recursion levels, there is a few limitations that must be mentioned : You need to close all windows before ending the UDF (you can exit script on any level in debug mode) You can only show one array per level at a giving time You cannot manipulate a lower level window untill its child has been closed Example : #include "ArrayDisplayInternalsEX.au3" Local $a = ["a", 2, 3] Local $b = [["x", "y", $a, "z"], [1, $a, 2, 3], [$a, "a", "b", "c"]] Local $c = ["x", "y", 1, $b, "a", 8 ,9 , 10, 11, 12, 13, "abcdef"] _DebugArrayDisplayEX($c, "Test") Enjoy ! ArrayDisplayInternalsEX.au3 pixelsearch, Skeletor, Musashi and 4 others 7 “They did not know it was impossible, so they did it” ― Mark Twain Spoiler Block all input without UAC Save/Retrieve Images to/from Text Monitor Management (VCP commands) Tool to search in text (au3) files Date Range Picker Virtual Desktop Manager Sudoku Game 2020 Overlapped Named Pipe IPC HotString 2.0 - Hot keys with string x64 Bitwise Operations Multi-keyboards HotKeySet Recursive Array Display Fast and simple WCD IPC Multiple Folders Selector Printer Manager GIF Animation (cached) Screen Scraping Multi-Threading Made Easy
pixelsearch Posted April 5, 2022 Posted April 5, 2022 (edited) Very interesting for sure, bravo Nine Edited April 5, 2022 by pixelsearch added "very"
pixelsearch Posted April 5, 2022 Posted April 5, 2022 (edited) @Nine one question : when you scripted the UDF, did you have in mind that getting rid of subclassing WM_NOTIFY could create issues (I guess) in case the user already registered WM_NOTIFY in his own script ? Just curious, as always Edited April 6, 2022 by pixelsearch deleted a pic which was not really useful for this thread
Nine Posted April 5, 2022 Author Posted April 5, 2022 (edited) 18 hours ago, pixelsearch said: that getting rid of subclassing WM_NOTIFY could create issues The major problem with subclassing is that you absolutely need to unregister the subclass before ending a script (all levels), otherwise the script hangs with a crash. If you have registered WM_NOTIFY with GUIRegisterMsg, you simply need to reexecute the registration after a call to the UDF _ArrayDisplayEX($My_Array) GUIRegisterMsg($WM_NOTIFY, My_WM_NOTIFY) Btw I will implement your solution on null cells in the next release of my UDF... TX Edited April 6, 2022 by Nine “They did not know it was impossible, so they did it” ― Mark Twain Spoiler Block all input without UAC Save/Retrieve Images to/from Text Monitor Management (VCP commands) Tool to search in text (au3) files Date Range Picker Virtual Desktop Manager Sudoku Game 2020 Overlapped Named Pipe IPC HotString 2.0 - Hot keys with string x64 Bitwise Operations Multi-keyboards HotKeySet Recursive Array Display Fast and simple WCD IPC Multiple Folders Selector Printer Manager GIF Animation (cached) Screen Scraping Multi-Threading Made Easy
pixelsearch Posted June 8 Posted June 8 @Nine Hello I knew your script "Recursive _ArrayDisplay" would be useful at times For example, it helps to see what's happening when you send a request to Google for translating a text, then you can display the nested arrays with your script : I added a couple of lines in it, to match the good functionality of the actual _ArrayDisplay function which indicates the number of [rows] and eventually [columns] of the array (when 2D), though I just created a trac ticket 4019 because something seems wrong in ArrayDisplayInternals.au3
Gianni Posted June 8 Posted June 8 ... if you prefer to view the contents of nested arrays within the same window rather than opening different windows for each subarray you can also try this other array viewer: https://www.autoitscript.com/forum/topic/182856-array-viewer pixelsearch 1 Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....
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