Jump to content

Recommended Posts

Posted (edited)

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)
                _GDIPlus_ImageDispose($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]
            Next

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

thanks!

cheers

Felix

Edited by fatpig
  • Moderators
Posted

fatpig,

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?

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)

maybe someone has a good quick way to automatically populate in 2 or more columns?
I currently am not sure on how to achieve that.

Edited by fatpig

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...