Wednesday, February 15, 2012

How to get screen resolution with Powerbuilder


This is the "old" trick, to get the screen resolution.

I'm using Powerbuilder reserved function, call GetEnvironment, which it can be used for another purpose beside screen resolution.

First of all, we must create a ENVIRONMENT variable like below
1:  environment myEnv  

Then we use GetEnvironment function to get the data(s).
1:  GetEnvironment(myEnv)  

Finally, we retrieve all the Environment objects, depending what kind of information do you need. For this case, I want to show how to get the screen resolution:

1:  messagebox("Screen Resolution",String(myEnv.ScreenWidth) + "x" + String(myEnv.ScreenHeight))  

For the complete Environment Object, you can search the Powerbuilder Help, or see the list below.


Environment property Datatype Description
CharSet CharSet (enumerated) The international character set used by PowerBuilder. Values include:
  • CharSetAnsi!
  • CharSetUnicode!
  • CharSetDBCS!
  • CharSetDBCSJapanese!
The values CharSetAnsiArabic! and CharSetAnsiHebrew! are not valid choices in PowerBuilder 6 or later.

ClassDefinition PowerObject An object of type PowerObject containing information about the class definition of the object or control.

CPUType CPUTypes (enumerated) The type of CPU. For a complete list of CPUTypes values, see the Enumerated tab of the Browser.

Language LanguageID
(enumerated)
Specifies the value of the language setting for the machine. For a complete list of LanguageID values, see the Enumerated tab of the Browser.

MachineCode Boolean Specifies whether the application executable is machine code (compiled). Values are:
  • TRUE – Executable is machine code.
  • FALSE – Executable is not machine code (pseudo-code).
OSFixesRevision Integer The maintenance version of the operating system.

OSMajorRevision Integer The major version of the operating system. For example, this value would be 4 for Windows 95, 98, ME, and NT 4.x, 5 for Windows 2000, XP, or 2003, and 6 for Vista, Windows Server 2008, and Windows 7.

OSMinorRevision Integer The point release of the operating system. For example, this value would be 0 for Windows Server 2008 and Vista, 1 for Windows XP or Windows 7, 2 for Windows Server 2003 and 64-bit XP, and 10 for SunOS 5.10 (Solaris 10).

PBBuildNumber Integer The build number of this version of PowerBuilder.

PBFixesRevision Integer The maintenance version of PowerBuilder.

PBMajorRevision Integer The major version of PowerBuilder.

PBMinorRevision Integer The point release of PowerBuilder.

NumberOfColors LongLong Number of colors on the screen.

ScreenHeight Long Height of the screen in pixels.

ScreenWidth Long Width of the screen in pixels.

OSType OSTypes (enumerated) Operating system or environment. For a complete list of OSType values, see the Enumerated tab of the Browser.

PBType PBTypes (enumerated) Version of the PowerBuilder product. For a complete list of PBType values, see the Enumerated tab of the Browser.

Win16 (obsolete) Boolean Indicates the type of the operating system in which the application executable is running. Values are:
  • TRUE – Executable is running under a 16-bit operating system.
  • FALSE – Executable is running under a 32-bit operating system.

No comments:

Post a Comment