You don't connect an array with sprites or windows.
As I said it is a memory structure, it is a non world plugin (meaning you don't see instance to it in the project like the mouse plugin for example) that contains values.
Where those values come from and where to attribute them is up to you.
The width/height/depth have nothing to see with the visual plan (window/layout/whatever), it is just the "size" of the array.
An array of 5 width will contains elements from Array.at(0) to Array.at(4) (arrays index are 0 based, 5 elements have index 0, 1, 2, 3, 4)
An array of 2 width, 3 height will have those coordinates/cells available to store/provide values :
Array(X, Y)
Array.at(0, 0)
Array.at(0, 1)
Array.at(0, 2)
Array.at(1, 0)
Array.at(1, 1)
Array.at(1, 2)
Check the 2nd part of the tutorial linked above (after the loop, the author speaks about the arrays with nice comprehensive illustrations)
You can have several instances of the same array and you can have different object type arrays (for example, one array for your characters, one array for the NPCs, one array containing the dialogs of the game, etc...)
Just have a look at the links and take the time to assimilate them and understand the tools provided by the array.
It requires a bit of abstractive thinking, but once you get used to it, you're good to go.
EDIT: Have a look at this other commented capx which show you how to create instances of a sprite and attribute its instance variables values according to the values stored in an array (and shows also a lot of picking).