Jump to content

GUICtrlCreatePic beyond 32767 pixels vertical?


Recommended Posts

Dear AutoIT Community.

I am currently working on a program that will display lots of images in a scroll down GUI.
I create the GUI based on the number of images, which works fine.
But all images I place using GuiCtrlCreatePic above a threshold of around 32000 pixels (cant say exactly) are placed at negative locations and finally will reach 0 again
and will then populate on top of the images placed there before.

For $i = 1 To $Images[0]
                ; Get picture dimensions
                $hImage = _GDIPlus_ImageLoadFromFile($ImgRep & $Images[$i])
                $iX = _GDIPlus_ImageGetWidth($hImage)
                $iY = _GDIPlus_ImageGetHeight($hImage)
                ; Resize & place images in GUI
                $Pic[$i] = GUICtrlCreatePic($ImgRep & $Images[$i], $Spacer, Round($yPos, 0), $MaxImgWidth, $MaxImgWidth * ($iY / $iX))
                $yPos = $yPos + $MaxImgWidth * ($iY / $iX) + $Spacer
                $log = $log & "|" & $yPos
                $currentlut = $Images[1]

I have found a limit at 32767 pixels for some GUI elements when googling around.
Can someone tell me how to circumvent that?




Edited by fatpig
Link to comment
Share on other sites

  • Moderators


AutoIt stores the coordinates for controls as an integer with a max size of 32767 - as you have discovered you cannot use coordinates above that value and I cannot think of a simple workaround. Perhaps using tabs so that you can spread the images over several of them?


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:


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

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

  • Create New...