1

For ArcGIS 10.3.1 on MS Windows 7 (moving from multiple screens to a single screen) sometimes the ArcToolbox dialogue box remains on the non existent secondary screen. How do I move the un-docked ArcToolbox dialogue to the main monitor, without deleting the normal templates.

I've tried: Alt-Tab. Shift Space M. etc. But nothing seems to cater for ArcGIS's special little dialogue boxes. Any ideas?

enter image description here

2
  • 1
    When this happens to me with ArcGIS 10.2.1, I can still generally see the edge of the toolbox on whatever side of the primary monitor it was closest to (the right side in your example). In that case i can still grab that edge and resize it enough to move it over. Other than that you'll probably be left with editing registry values or the last resort of deleting your normal.mxt. Aug 18, 2015 at 13:09
  • In my case the toolbox window is not visible. I've figured out a registry hack that reset's only the ArcToolbox dialogue box. Though I hate the idea of telling green users to do a registry edit.
    – GISI
    Aug 19, 2015 at 1:32

3 Answers 3

2

Your self-answer gave me an idea. It seems your main concern with the registry fix is a user accidentally editing/deleting other things. And rightfully so...

Since you already have Python installed you can script the edit, so the user never even needs to understand what is really happening. They just need to run the script.

It does need to be run under elevated privileges however, just as regedit would, with ArcGIS not currently running.

This should work for any 10.x version of ArcGIS in Python 2.7:

import arcpy

# This is renamed to winreg in Pyhton 3.x
import _winreg 

dockname = 'ArcToolbox'

# The sub (minor?) version is not used in the registry path
# i.e. 10.2.1 is still just 10.2
arcgisver = '.'.join(arcpy.GetInstallInfo()['Version'].split('.')[:2])
regpath = r'Software\ESRI\Desktop{0}\ArcMap\DockingPaneLayouts\panestate'
regpath = regpath.format(arcgisver)

if __name__=='__main__':
    panestates = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, 
                                 regpath, 0, _winreg.KEY_ALL_ACCESS)
    k = 0
    pane = None
    try:
        while True:
            p = _winreg.EnumKey(panestates,k)
            pkey = _winreg.OpenKey(panestates,p)
            try:
                ptitle = _winreg.QueryValueEx(pkey,'Title')[0]
                pkey.Close()
                if ptitle == dockname:
                    pane = p
                    break
            except WindowsError:
                pass
            k += 1
    except WindowsError:
        pass

    if pane is not None:
        _winreg.DeleteKey(panestates,pane)
        print 'Reset {0} docking panel'.format(dockname)
    else:
        print "Couldn't find {0} docking panel key".format(dockname)
    panestates.Close()
1
  • I've tested this and it works perfectly. You are an Evil Genius!
    – GISI
    Aug 20, 2015 at 5:12
0

If you only temporarily logged in a computer with one screen, what worked for me was, to log in my usual two display workstation, dock the toolbox into one of the panels within the ArcGIS desktop window, and save the ArcMap session. This works of course only for temporary station change and you will have to use the saved arc map when you log in from a one display workstation.

2
  • Alas. That's not an option as users tend to take their laptops home and don't have access to two displays.
    – GISI
    Aug 19, 2015 at 1:38
  • 1
    @GISI True that, It is a quick way of solving this, if you need to present something in the conference room where you could still access your office (that was my situation). Another solution that does not involve editing Reg keys is ... Go to C:\Users\<yourusername>\AppData\Roaming\ESRI\Desktop10.0\ArcMap\Templates and delete Normal.mxt, ArcMap creates a fresh template next time you open ArcGIS with the default setting where all components appear within the ArcMap window. (path may be different depending on OS, AG version etc)
    – yanes
    Aug 19, 2015 at 15:20
0

This is not an ideal solution. There's risk involved. Close ArcGIS Desktop on your computer. Preform a regedit: Navigate to: HKEY_CURRENT_USER > Software > ESRI > Desktop10.3 > ArcMap > DockingPaneLayouts > panestate. Search the Pane - x folders for "Title" = "ArcToolbox" (like in the screen grab below). Where this Reg_SZ exists Delete the "Pane-x" folder.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.