# Inconsistent Screen Indexes

**URL:** <https://forum.inductiveautomation.com/t/inconsistent-screen-indexes/28578>\
**Category:** Ignition\
**Tags:** ignition79\
**Created:** [September 26, 2019, 12:58pm UTC](https://forum.inductiveautomation.com/t/inconsistent-screen-indexes/28578 "2019-09-26T12:58:54Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [September 26, 2019, 2:27pm UTC](https://forum.inductiveautomation.com/t/inconsistent-screen-indexes/28578/4 "2019-09-26T14:27:34Z")

</div>

As Phil has stated elsewhere, sun, moon, stars, etc.

However, I believe it sources from _java.awt.GraphicsEnvironment_. I don’t know how it puts things in order, possibly in hardware names.

_getScreens()_ should probably also return the x and y properties from the bounds to give the location in the desktop space. In single monitor apps, they’d always be 0,0, but for my three-monitor setup, I get this:

 ![2019-09-26_10-21-23](https://us1.discourse-cdn.com/inductiveautomation/original/2X/e/e54e85bf530c7ba26f2f52c6b4253cfdafd86d3f.png)

```auto
def getScreens():
	import java.awt.GraphicsEnvironment as GE
	g_env = GE.getLocalGraphicsEnvironment()
	screenDevices = g_env.getScreenDevices()

	output = []
	count = 0

	for device in screenDevices:
		config = device.getDefaultConfiguration()
		bounds = config.getBounds()
		output.append((count, bounds.width, bounds.height, bounds.x, bounds.y))
		count += 1

	return output
		
print getScreens()

```

---

_[View the full topic](https://forum.inductiveautomation.com/t/inconsistent-screen-indexes/28578)._
