Solved Is it possible to have icons of 32px and their name BELOW?

This in AHK removes align left and adds the scrollbar:

Code:
Control, Style, -0x2800, FolderView, ahk_id %lParam%
Control, Style, -0x2800, SysListView321, ahk_id %lParam%

...It seems in desktop mode groupping does not work...
 
Last edited:

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
This in AHK removes align left and adds the scrollbar:

Code:
Control, Style, -0x2800, FolderView, ahk_id %lParam%
Control, Style, -0x2800, SysListView321, ahk_id %lParam%
...It seems in desktop mode groupping does not work...
Thank you, Anixx!
I copy/pasted your code and then compiled the file with AutoHotkey 1.1.22.09. However it doesn't seems to run / work. Any ideas?
 

My Computer My Computer

At a glance

Windows 7 Pro x64
Computer type
PC/Desktop
OS
Windows 7 Pro x64
This is the complete script that I am using, it also removes the address bar and adds the client edge. It includes the lines above:

Code:
#NoTrayIcon
#NoEnv
Gui +LastFound
hWnd := WinExist()
SetControlDelay, -1
SetBatchLines -1

DllCall( "RegisterShellHookWindow", UInt,hWnd )
MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )
OnMessage( MsgNum, "ShellMessage" )
Return
 
ShellMessage(wParam,lParam) {
   If (wParam = 1  or wParam = 6) ;  HSHELL_WINDOWCREATED := 1
   {

WinGetClass, WinClass, ahk_id %lParam%
if (WinClass = "CabinetWClass") {

;ControlGetPos,x,,w,,DirectUIHWND2, ahk_id %lParam%
;ControlMove, ShellTabWindowClass1,x-1,,w+1,, ahk_id %lParam%

Control, ExStyle, +0x200, FolderView, ahk_id %lParam%
Control, ExStyle, +0x200, SysListView321, ahk_id %lParam%
Control, ExStyle, +0x200, SysTreeView321, ahk_id %lParam%

Control, Style, -0x2800, FolderView, ahk_id %lParam%
Control, Style, -0x2800, SysListView321, ahk_id %lParam%

If (wParam = 6){
ControlGetPos,,,,h, ShellTabWindowClass1, ahk_id %lParam%
ControlMove, ShellTabWindowClass1,,,,h+1, ahk_id %lParam%
ControlMove, ShellTabWindowClass1,,,,h, ahk_id %lParam%
}

;If (wParam = 1){
ControlGetPos, ,y1,,ha,ReBarWindow321, ahk_id %lParam%

SendMessage, 0x0082,,,ReBarWindow321, ahk_id %lParam%

Control, Hide,, WorkerW1, ahk_id %lParam%
Control, Hide,, ReBarWindow321, ahk_id %lParam%

ControlGetPos,,y2,,h1,ShellTabWindowClass1, ahk_id %lParam%
ControlMove, ShellTabWindowClass1,, y1,,y2-y1+h1, ahk_id %lParam%
ControlMove, ReBarWindow321,,,,0, ahk_id %lParam%

WinSet, Redraw,, ahk_id %lParam%

Sleep, 100

SendMessage, 0x0082,,,ReBarWindow321, ahk_id %lParam%

Control, Hide,, WorkerW1, ahk_id %lParam%
Control, Hide,, ReBarWindow321, ahk_id %lParam%

ControlGetPos,,y2,,h1,ShellTabWindowClass1, ahk_id %lParam%
ControlMove, ShellTabWindowClass1,, y1,,y2-y1+h1, ahk_id %lParam%
ControlMove, ReBarWindow321,,,,0, ahk_id %lParam%

WinSet, Redraw,, ahk_id %lParam%

Sleep, 100

SendMessage, 0x0082,,,ReBarWindow321, ahk_id %lParam%

Control, Hide,, WorkerW1, ahk_id %lParam%
Control, Hide,, ReBarWindow321, ahk_id %lParam%

ControlGetPos,,y2,,h1,ShellTabWindowClass1, ahk_id %lParam%
ControlMove, ShellTabWindowClass1,, y1,,y2-y1+h1, ahk_id %lParam%
ControlMove, ReBarWindow321,,,,0, ahk_id %lParam%

WinSet, Redraw,, ahk_id %lParam%

Sleep, 100

SendMessage, 0x0082,,,ReBarWindow321, ahk_id %lParam%

Control, Hide,, WorkerW1, ahk_id %lParam%
Control, Hide,, ReBarWindow321, ahk_id %lParam%

ControlMove, ShellTabWindowClass1,, y1,,y2-y1+h1, ahk_id %lParam%
ControlMove, ReBarWindow321,,,,0, ahk_id %lParam%

WinSet, Redraw,, ahk_id %lParam%

Sleep, 100

SendMessage, 0x0082,,,ReBarWindow321, ahk_id %lParam%

Control, Hide,, WorkerW1, ahk_id %lParam%
Control, Hide,, ReBarWindow321, ahk_id %lParam%

ControlMove, ShellTabWindowClass1,, y1,,y2-y1+h1, ahk_id %lParam%
ControlMove, ReBarWindow321,,,,0, ahk_id %lParam%

;}
}

if (WinClass = "NotebookFrame") {
Control, ExStyle, +0x200, NotebookContent1, ahk_id %lParam%
WinGetPos, , , , h, ahk_id %lParam%
WinMove, ahk_id %lParam%,,,,,h-1
;WinMove, ahk_id %lParam%,,,,,h

}

}

}
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Windows Explorer >> Tools >> Folder Options >> View >> Apply to Folders doesn't seem to work.
It should work, at least it works for me.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Here it is, sharp icons finally:

h_1452085837_2808309_c7ab7fced8.png


h_1452085946_9390720_81769e090b.png


But there are issues remaining.

1. Registry hack does not work as reliably and universally as Folder Options X. We have to modify Folder Options X so to set the desktop mode. I know how to do that but I do not know how to build Folder Options X. I tried various combinations of MSVS and WinSDK but nothing worked.

2. We do not have the shortcut for 32px icons in the View menu.

3. We need all the same but in open/save dialogs.

4. The groupping does not work and manual sorting is not remembered in the Desktop mode.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Thanks, Anixx!

I edited your script and removed some of the code. The result is this:
Code:
#NoTrayIcon
#NoEnv
Gui +LastFound
hWnd := WinExist()
SetControlDelay, -1
SetBatchLines -1

DllCall( "RegisterShellHookWindow", UInt,hWnd )
MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )
OnMessage( MsgNum, "ShellMessage" )
Return
 
ShellMessage(wParam,lParam) {
   If (wParam = 1 or wParam = 6) ; HSHELL_WINDOWCREATED := 1
   {

WinGetClass, WinClass, ahk_id %lParam%
if (WinClass = "CabinetWClass") {

Control, Style, -0x2800, FolderView, ahk_id %lParam%
Control, Style, -0x2800, SysListView321, ahk_id %lParam%
}

}

}
Alignment and scrollbar are working great now!
Anything else I should remove from the code to speed it up?

Unfortunately Windows Explorer >> Tools >> Folder Options >> View >> Apply to Folders still doesn't work for me :(
 

My Computer My Computer

At a glance

Windows 7 Pro x64
Computer type
PC/Desktop
OS
Windows 7 Pro x64
Unfortunately Windows Explorer >> Tools >> Folder Options >> View >> Apply to Folders still doesn't work for me :(
Try to delete the Bags entry in the registry. Also this works only for the same type of folders as the one u are using.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
I just found another method! By adding and then removing the LVS_SMALLICONS window style (in a folder without the desktop behavior), the labels should default to the bottom.


Well this method also works!

Its advantages:

* No registry editing is needed
* Groupping and manual arrange will work
* It will instantly be applied to all folder types whose icon size is set to below or equal 32 px.

Its disadvantages:

* When switching from another view, the labels will be to the right until the folder is closed and reopened.
* For big folders the change is not instanteous.
* It affects table view and list view, making them look like small icons.

The code is:

Code:
Control, Style, +0x2, FolderView, ahk_id %lParam%
Control, Style, +0x2, SysListView321, ahk_id %lParam%
Control, Style, -0x2, FolderView, ahk_id %lParam%
Control, Style, -0x2, SysListView321, ahk_id %lParam%
 
Last edited:

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
I thought this would work for me but it didn't. I tried with 32px icon size. Even below 32px it still won't work.

Code:
#NoTrayIcon
#NoEnv
Gui +LastFound
hWnd := WinExist()
SetControlDelay, -1
SetBatchLines -1

DllCall( "RegisterShellHookWindow", UInt,hWnd )
MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )
OnMessage( MsgNum, "ShellMessage" )
Return
 
ShellMessage(wParam,lParam) {
   If (wParam = 1  or wParam = 6) ;  HSHELL_WINDOWCREATED := 1
   {

WinGetClass, WinClass, ahk_id %lParam%
if (WinClass = "CabinetWClass") {

Control, Style, +0x2, FolderView, ahk_id %lParam%
Control, Style, +0x2, SysListView321, ahk_id %lParam%
Control, Style, -0x2, FolderView, ahk_id %lParam%
Control, Style, -0x2, SysListView321, ahk_id %lParam%

}

}

}
Any help is much appreciated!
 

My Computer My Computer

At a glance

Windows 7 Pro x64
Computer type
PC/Desktop
OS
Windows 7 Pro x64
Install program Folder Options X and check "disable auto-arrange".
 
Last edited:

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
This code fixes the issue with affecting table and list modes. Now it applies the change only if the mode is small icons (32 px and below).

Code:
SendMessage, 0x108F,,,SysListView321, ahk_id %lParam%

If (ErrorLevel=0x2){

Control, Style, +0x2, SysListView321, ahk_id %lParam%
Control, Style, -0x2, SysListView321, ahk_id %lParam%

}
 
Last edited:

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Wow, I've been missing out on here!

Sorry I've been gone for a while. My hard drive crashed, and I've been working on fixing that (been using Linux for the past couple of weeks until I was able to get a new copy of Windows 7 Ultimate).
But I gotta say I'm glad you figured out how to do this without having to set every folder view to desktop mode. That makes this much more convenient and practical. I'm surprised that this works so well. Amazing work as usual! Now if only there were a simple way to select 32x32 icons as a view mode.
 

My Computer My Computer

At a glance

Windows 7 Professional x64Intel Core i7-4510U CPU8 GB RAMIntel(R) HD Graphics (I so wish I could upgra...
Computer type
Laptop
Computer Manufacturer/Model Number
Dell Inspiron 15 7000 Series
OS
Windows 7 Professional x64
CPU
Intel Core i7-4510U CPU
Memory
8 GB RAM
Graphics Card(s)
Intel(R) HD Graphics (I so wish I could upgrade this)
Screen Resolution
1920x1080
Keyboard
Laptop keyboard
Mouse
Microsoft Mouse
Internet Speed
Nothing to write home about
Antivirus
Malwarebytes Anti Malware
Browser
Pale Moon (Firefox fork)
Other Info
My primary laptop has Windows 10 on it, and my shared desktop (which is actually a laptop being used as a desktop) has Windows 7 Professional on it. I still use both, but I would say I use my laptop a bit more now.
* When switching from another view, the labels will be to the right until the folder is closed and reopened.
Refreshing the folder view will also revert the labels to the bottom. This is kind of an annoyance though.


* For big folders the change is not instanteous.
Haven't noticed this, but I guess I really haven't tested this that much yet either. The biggest folder I've tested this in is System32. And when I have briefly seen the labels on the right, it was only for a fraction of a second.
 

My Computer My Computer

At a glance

Windows 7 Professional x64Intel Core i7-4510U CPU8 GB RAMIntel(R) HD Graphics (I so wish I could upgra...
Computer type
Laptop
Computer Manufacturer/Model Number
Dell Inspiron 15 7000 Series
OS
Windows 7 Professional x64
CPU
Intel Core i7-4510U CPU
Memory
8 GB RAM
Graphics Card(s)
Intel(R) HD Graphics (I so wish I could upgrade this)
Screen Resolution
1920x1080
Keyboard
Laptop keyboard
Mouse
Microsoft Mouse
Internet Speed
Nothing to write home about
Antivirus
Malwarebytes Anti Malware
Browser
Pale Moon (Firefox fork)
Other Info
My primary laptop has Windows 10 on it, and my shared desktop (which is actually a laptop being used as a desktop) has Windows 7 Professional on it. I still use both, but I would say I use my laptop a bit more now.
Wow, I've been missing out on here!

Sorry I've been gone for a while. My hard drive crashed, and I've been working on fixing that (been using Linux for the past couple of weeks until I was able to get a new copy of Windows 7 Ultimate).
But I gotta say I'm glad you figured out how to do this without having to set every folder view to desktop mode. That makes this much more convenient and practical.

Why? Only groupping and manual sorting does not work with desktop mode.
I'm surprised that this works so well. Amazing work as usual! Now if only there were a simple way to select 32x32 icons as a view mode.

Yes, we need a shortcut. But note that it will work well only with desktop mode because switching views while using the second method does not put labels below unting folder closed and opened anew.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Refreshing the folder view will also revert the labels to the bottom. This is kind of an annoyance though.

To refresh it one has to catch the event of the change of the view. I think it is impossible with AHK.

Haven't noticed this, but I guess I really haven't tested this that much yet either. The biggest folder I've tested this in is System32. And when I have briefly seen the labels on the right, it was only for a fraction of a second.
But with desktop mode there is even not a fraction of a second.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Install program Folder Options X and check "enable auto-arrange".
The code works with Folder Options X installed and "Enable icon reordering" checked!

All my folders are now back to 32px icon size. Icons are crystal sharp again. This is sweat!

I don't see any delay, folder browsing is instantaneous just like it used to be in Windows Explorer @ WinXP.

Now, how to make it work without installing Folder Options X? Is it possible?
 

My Computer My Computer

At a glance

Windows 7 Pro x64
Computer type
PC/Desktop
OS
Windows 7 Pro x64
Install program Folder Options X and check "enable auto-arrange".
Now, how to make it work without installing Folder Options X? Is it possible?
Yes, it is possible with editing registry instead, modifying the fflags values in the bags, then "apply to all folders" and the stuff similar to what you already tried. Folder Options X does exactly this: modifies the registry values for all folders.
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Try the attached two reg files if you want to do this without Folder Options X. But note that this will be less reliable method, for instance it will not work on zip folders and some other special folders.
 

Attachments

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Regarding shortcuts.

This code will replace tiles and content modes with icons. Since the content mode is defaulted to 32px, changing to "Content" will make the 32px icons. Although this will work only after the folder is closed and reopened. Unfortunately in "disable auto-arrange" mode in the context menu there is no shortcut for Content mode, but a button for this mode exists in Classic Shell. Awkward solition of course but somebody can find it useful.

Code:
SendMessage, 0x108F,,,SysListView321, ahk_id %lParam%
If (ErrorLevel=0x2 or ErrorLevel=0x4){

Control, Style, +0x2, SysListView321, ahk_id %lParam%
Control, Style, -0x2, SysListView321, ahk_id %lParam%

}
 

My Computer My Computer

At a glance

Windows 7
Computer type
PC/Desktop
OS
Windows 7
Try the attached two reg files if you want to do this without Folder Options X. But note that this will be less reliable method, for instance it will not work on zip folders and some other special folders.
I don't use zip folders / special folders so that's not a problem.

I restored the system. Then applied the 2 .reg files. When the ahk script is running the text is on the right side and not below the 32px icons.

Code:
#NoTrayIcon
#NoEnv
Gui +LastFound
hWnd := WinExist()
SetControlDelay, -1
SetBatchLines -1

DllCall( "RegisterShellHookWindow", UInt,hWnd )
MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )
OnMessage( MsgNum, "ShellMessage" )
Return
 
ShellMessage(wParam,lParam) {
   If (wParam = 1  or wParam = 6) ;  HSHELL_WINDOWCREATED := 1
   {

WinGetClass, WinClass, ahk_id %lParam%
if (WinClass = "CabinetWClass") {

SendMessage, 0x108F,,,SysListView321, ahk_id %lParam%

If (ErrorLevel=0x2){

Control, Style, +0x2, SysListView321, ahk_id %lParam%
Control, Style, -0x2, SysListView321, ahk_id %lParam%

}

}

}

}
Any ideas?

By the way, is this information any helpful?
 

My Computer My Computer

At a glance

Windows 7 Pro x64
Computer type
PC/Desktop
OS
Windows 7 Pro x64
Back
Top