コード例 #1
0
 def SetDisplayMode(self, size, frequency, bitdepth, flags=0):
     devMode = DEVMODE()
     devMode.dmSize = sizeof(DEVMODE)
     devMode.dmPelsWidth = size[0]
     devMode.dmPelsHeight = size[1]
     devMode.dmBitsPerPel = bitdepth
     devMode.dmDisplayFrequency = frequency
     devMode.dmFields = (DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT
                         | DM_DISPLAYFREQUENCY)
     ChangeDisplaySettingsEx(self.deviceName, pointer(devMode), 0, flags, 0)
コード例 #2
0
def SetDisplayModes(*args):
    for (deviceName, x, y, width, height, freq, bitdepth, isAttached,
         isPrimary, displayFlags) in args:
        devMode = DEVMODE()
        devMode.dmSize = sizeof(DEVMODE)
        if isAttached:
            devMode.dmPosition.x = x
            devMode.dmPosition.y = y
            devMode.dmPelsWidth = width
            devMode.dmPelsHeight = height
            devMode.dmBitsPerPel = bitdepth
            devMode.dmDisplayFrequency = freq
            devMode.dmDisplayFlags = displayFlags
        devMode.dmFields = (DM_POSITION | DM_BITSPERPEL | DM_PELSWIDTH
                            | DM_PELSHEIGHT | DM_DISPLAYFLAGS
                            | DM_DISPLAYFREQUENCY)
        flags = (CDS_UPDATEREGISTRY | CDS_NORESET)
        if isPrimary:
            flags |= CDS_SET_PRIMARY
        ChangeDisplaySettingsEx(deviceName, pointer(devMode), 0, flags, 0)
    ChangeDisplaySettingsEx(None, None, 0, 0, 0)