Is there any way to place the taksbar icons of all the open apps in Windows 8.1 next to each other automatically?
Say I open an app whose icon is on the far left, next to the start button, and I want said icon to appear to move to the far right of my string of icons, next to all my other open programs, automatically.
Is there any way to do that?
Do you mean, for applications that you have already pinned to the taskbar, you want them to move over to the end of the line of open programs? I don't think it is possible to set this option automatically. However, you can manually move them to where-ever and they will remain pinned. For other taskbar settings, just search Taskbar and the settings box will come up.
Related
Is there an API or a database/settings file/registry for getting the positions of icons on the Desktop?
If you wonder why I want that, basically I want to create a replica of Desktop in my app for my personal use, so that I could access those icons, when multiple windows are open, without using the "Show Desktop" feature which minimises all windows. The problem of Window's "Show Desktop" is that if I opened a new window by clicking an icon on the desktop, performing "Show Desktop" again does not restore all minimised windows at once.
On macOS, I did not have this problem, because pinching-out with 4 fingers showed the desktop without minimising opened windows. It just temporarily moved them out of the screen, and pinching-in restored windows to their original states, even if I had opened a new window by clicking an icon on the desktop.
There are other ways to access those icons, without using "Show Desktop", like opening the Desktop location in File Explore, but then the icon locations are not the same as the Desktop, so it is difficult to find the item I want. Enabling multiple virtual Desktops, and switching to an empty Desktop to click the item is one way, but then it gets opened on that Desktop and I would have to move it to the other Desktop.
I'm using PyCharm with multiple monitors on Mac OSX (10.10.5), normally you can drag windows off to a separate monitor. In PyCharm that works, but they (and in particular the Run window) snap back to the main monitor.
I've only seen this on the latest PyCharm 5 CE though its possible older versions also had the problem. I've searched all the settings and searched online, but can't find a setting that makes the window stay where it was placed.
Right click on the tab and select View Mode as Window.
Then you can move the window to another monitor.
It's crappy behaviour from the best python IDE out there.
There is a OSX solution but i'm not sure if you will like it:
You can enable old style multiple screen support again in OSX by going to System Preferences, Mission Control and uncheck "Displays have separate spaces". Now your floating windows will not snap back and you can even extend your PyCharm main window over the screens.
The downside of this solution is that you'll have the OSX dock and main menu only on your main monitor. I hope Jetbrains will fix this behaviour soon.
Another way to achieve what you want is to open multiple instances of the project. When you try to open the project for the second time you can choose "open project in new window". You can drag the new window to the second screen; it won't snap back to your primary monitor.
For Ubuntu and Windows users landing up here:
Press Shift + F4 or
Right-click and select 'Move Tab to New Window'
Drag the newly created window to the next screen
The best option is to detach an editor window and drag it to your second monitor.
some of my icons disappeared, for example the whole Microsoft office icons, they disappeared in the start menu, programm and features and also on the desktop.,
what i've tried is , to go to the folder of the exe, and pin it to the taskbar this will also show up the icon for unknown exe. changing icon doesnt work for the shortcuts, its disabled.
then i made a new shortcut and put it on the desktop that will show up the original icon. so i can recreate the start menu and the desktop, but still the icons are missed in programm and features.
i also tried to delete the icon cache db a 100 times but that doesnt work.
has anybody a solution?
does somebody know where the icon references are stored in the registry. i dont know where to start
Rebuild the icon cache.
If that doesn't work look here for a quick and easy fix.
http://www.arcane.org/the-mystery-of-the-disappearing-windows-7-start-menu-icons/
Using LoadImage I changed the icon of all the windows in a group. However the group icon does not change. How can I get the corresponding group to a window and set its icon?
The group icon comes from the EXE file itself (in the case of multiple EXEs contributing to the same group, I imagine the taskbar has some algorithm to decide which EXE to pull the icon from). There is no official API to change the group icon. You would have to manipulate the Taskbar directly, which is not impossible but not trivial either.
Update: I just came across the following answer, maybe it will help you:
https://stackoverflow.com/a/219128/65863
Update: Apparently the Registry value in the above link only applies if the app is pinned to the Taskbar.
Your issue is this: The icon does infact take the icon of the first WINDOW, not exe. HOWEVER, after setting the icons, you have to right click on the icon in the taskbar, then pin it, then unpin it. On unpin the taskbar icon now takes the first windows icon.
I don't know how to programatically do this to maybe #RemyLebeau knows. Maybe setClassLongPtr? Not sure.
Now when it's pinned you want to make it use the same icon, so set the registry value like #RemyLebeau suggested.
Also I don't know how to explain this, but after unpinning, and the icon takes, if you open the jump list, the icon reverts back to the exe's icon. This may be fixed with the registry setting for pinned icon, I'm not sure.
Wow so Win7 taskbar is so tweakish.
Edit: I tried setting my registry values and the icon didnt work. It might have to do something with: the registry entires that i found for TaskbarGroupIcon all had a data value ending with a comma and a number (ex: ,-4 in %SystemRoot%\System32\imageres.dll,-4)
I would like to completely remove the Windows 7 taskbar, including tray and start-button, so that the user can not reactivate it by pressing the Windows-key on the keyboard. however, all other explorer functionality (i.e. starting an explorer Window using Windows+E) should remain.
Is it possible to permanently hide the complete taskbar? Maybe there are some registry values on could change in order to make that behaviour selectable using a powershell script?
Thanks a lot
Here be my solution (it hides rather than replaces or removes the native taskbar - this allows it to work with programs that have a dependency on the native taskbar, such as display fusions taskbar).
disable-taskbar-always-top
Still to solve: [HALF SOLVED]
Eliminate the stupid line that auto-hide leaves with some maximized applications, such as Google Chrome
HALF SOLUTION -
If you move the taskbar to the left or right edge prior to doing the above steps, you don't get the stupid auto-hide line at the top or bottom of Google Chrome. Since the native taskbar is not mouse sensitive anymore, it won't impact your use of hot corners, or multi monitors (for instance I have the native taskbar on the left of my middle monitor, and it does not popup when moving between monitors using the steps in this post).
Okay, I think I have finally - finally - got a workaround that:
Keeps the native Windows 7/8 taskbar hidden for your session (you do have a couple of steps you need to do on start-up each time, or if you manually un-hide the taskbar).
Prevents the native Windows 7/8 taskbar from opening with popups or programs seeking attention (flashing taskbar thing).
Prevents the native taskbar from being mouse sensitive (i.e. despite auto-hide, it will not appear when you mouse over the hidden taskbar anymore).
Allows you to use the screen area that is occupied by the native taskbar (this is the problem of not combining Taskbar-Hide with the autohide setting; you can't use that screen real-estate).
Allows you to run alternative taskbars that are dependent on keeping the native taskbar functional (for instance Dislay Fusions Multi-Monitor Taskbar + [Settings >> Advanced Settings ?> 'Show On All Montiors'])
One Time Steps:
1) Download and run this registry edit to prevent balloon notification popups from the native taskbar/system tray:
Notifications - Enable or Disable Message Balloons - Windows 7 Help Forums
(You can open this in notepad to see what changes it will make prior to installing it, if you want).
2) Download and run Taskbar-Hide from here:
Hide Taskbar: Hide Taskbar in Windows 8 | 7 with a hotkey
3) Set the taskbar to auto-hide
Optional:
3) B) Add a shortcut to Taskbar-Hide.exe in your startup folder, to have it launch automatically with windows on startup (you still need to use the Ctrl+Esc hotkeys to activate the functions of taskbar-hide - though you could also script this if you were really keen).
Startup Folder:
C:\Users{User Name}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Steps to hide taskbar after each start-up or manually un-hiding using Taskbar-Hide
4) Make sure Taskbar-Hide is running.
5) Make sure the taskbar is in its auto-hide state (i.e. you'll have to look at any programs that are currently seeking attention).
6) Once the taskbar is 'auto-hidden', press the hotkeys for Taskbar-Hide (Ctrl+Esc)
[This should mean that the native taskbar area is no longer sensitive to mouse activity]
One way is to replace the explorer shell with your own shell. This is the a common method done in Windows 7 Embedded.
In older versions of Windows (such as XP) it was possible to specifiy a shell for each user via regedit. I am not sure this is easily possible in Windows 7.
See https://superuser.com/questions/352865/how-do-i-change-the-windows-shell-for-only-one-user
Make an empty exe file and use it as the file to use in your "Custom User Interface" group policy. Additional information here.
I have found another solution that works nearly perfect for me, by just hiding the Taskbar and the Start button by simply sending both the WM_HIDE message:
Handle = FindWindow("Shell_TrayWnd", "");
...
ShowWindow(Handle, SW_SHOW);
The only problem I have with that solution is that the taskbar is not hidden permanently, i.e. as soon as one element is activated that does not have the focus, which on the taskbar leads to the item flashing in yellow, the taskbar gets visible again.
I'm not sure if there is a way to prevent Windows from re-enabling the visible flag of the taskbar in some way, or a method to hook to the SW_SHOW in C# though.