ArcObjects Library Reference (Display)  

IScreenDisplay Interface

Provides access to members that control Screen Display. Note: the IScreenDisplay interface has been superseded byIScreenDisplay2. Please consider using the more recent version.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

When To Use

The IScreenDisplay interface manages the display attributes of a screen.  IScreenDisplay also handles other issues specific to windows including the backing store, scrolling, and invalidation.

Two objects currently implement IScreenDisplay, AppDisplay and ScreenDisplay. Each object's implementation of IScreenDisplay is slightly different; look at the help for a particular member for more details.


Read/write property ActiveCache Screen cache where drawing occurs. Use rarely. Change cache inside StartDrawing/FinishDrawing sequence.
Method AddCache Creates a new cache and return its ID. The ID can be specified to StartDrawing to direct output to the cache. It can also be used with a number of other methods such as DrawCache and Invalidate.
Read-only property CacheCount Number of screen caches.
Read-only property CacheMemDC Memory device context for the specified screen cache.
Read/write property CancelTracker Cancel tracker that is associated with the display.
Read-only property ClipEnvelope The bounds of the invalid region. Use after StartDrawing and before FinishDrawing.
Read-only property ClipEnvelopes The invalid region as a set of envelopes. Use after StartDrawing and before FinishDrawing.
Read/write property ClipGeometry User-specified clip shape. This shape is merged with the invalid region to arrive at the actual clip region. Must be specified before StartDrawing.
Read/write property DisplayTransformation The transformation used by the display.
Method DoScroll Scrolls the screen by the specified amount.
Method DrawCache Draws the specified screen cache to the specified window device context. Pass an empty rectangle to copy the full bitmap to the DC origin.
Method DrawMultipoint Draws specified multipoint on the display.
Method DrawPoint Draws specified point on the display.
Method DrawPolygon Draws specified polygon on the display.
Method DrawPolyline Draws specified line on the display.
Method DrawRectangle Draws specified rectangle on the display.
Method DrawText Draws specified text on the display.
Read/write property Filter Display filter. Must call while in a StartDrawing-FinishDrawing sequence. Set Filter to 0 to resume normal drawing.
Method FinishDrawing Completes drawing.
Read-only property hDC The device context that the display is currently drawing to. Only valid between calls to StartDrawing and FinishDrawing.
Read/write property hPalette Palette.
Read/write property hWnd Associated window handle.
Read/write property IlluminationProps Illumination properties used by the display.
Method Invalidate Cause the specified area of the specified cache to redraw.
Method IsCacheDirty Indicates if the specified cache needs refreshing.
Read/write property IsFirstCacheTransparent Indicates if the bottom cache is transparent.
Read/write property IsFramed Indicates if drawing occurs in a frame rather than on the whole window.
Method PanMoveTo Pans to a new point.
Method PanStart Prepares display for panning.
Method PanStop Stops panning and returns new visible bounds.
Method Progress Call frequently during drawing process.
Method RemoveAllCaches Removes all caches.
Method RemoveCache Removes the specified cache.
Method RotateMoveTo Rotates to new point.
Method RotateStart Prepares display for rotating. If centerPt is NULL, the center of the visible bounds is used.
Method RotateStop Stops rotating and returns new angle.
Method RotateTimer Draws the rotated display. Call in response to WM_TIMER.
Read/write property ScaleContents Indicates if the contents of the screen scale when a resize occurs. True means scale contents to fit new window size. False means contents stays the same with more or less of it showing.
Method SetScrollbarHandles Optionally specify application supplied scrollbars.
Method SetSymbol Sets the symbol used for drawing. Four different symbols can be specified simultaneously: Marker, Line, Fill, Text.
Method StartDrawing Prepare the display for drawing. Specify the device context and the cache to draw to (normally esriNoScreenCache). The ScreenDisplay coclass will automatically create a window device context if you specify hdc = 0.
Method StartRecording Starts recording all output to the recording cache.
Method StopRecording Stops recording to the recording cache.
Read/write property SuppressEvents Indicates if display object suppresses events.
Read/write property SuppressResize Indicates if display resizing is suppressed. True means the display doesn't resize with the window. False ensures that the display is the same size as the window.
Method TrackPan Interactively pans the screen.
Method TrackRotate Interactively rotates the screen.
Method UpdateWindow Forces a redraw.
Read/write property UseScrollbars Indicates if scrollbars should appear.
Read-only property WindowDC Device context for the associated window. Only use this between calls to StartDrawing and FinishDrawing.

Inherited Interfaces

Interfaces Description
IDisplay Provides access to members that control the Display.

CoClasses that implement IScreenDisplay

CoClasses and Classes Description
AppDisplay (esriArcMapUI) Esri Display.
GlobeDisplay (esriGlobeCore) The globe display object.
SceneGraph (esri3DAnalyst) A container for recording data and events that occur in a scene.
ScreenDisplay Display class for drawing to window.

.NET Snippets

Draw Point | Get Screen Coordinates from Map Coordinates | Draw Rectangle | Draw Polygon | Do Identify | Get Map Coordinates from Screen Coordinates | Draw Polyline Using Input Geometry | Draw Polyline | Convert Display Pixels to Map Units | Get Polyline From Mouse Clicks

.NET Samples

Custom map navigation commands (Code Files: Pan) | Dynamic logo (Code Files: DynamicLogo) | Display feedback (Code Files: DisplayFeedbackSampleVB) | Make a custom time slider (Code Files: CustomTimeSliderButton) | Custom UI elements using add-ins (Code Files: AddGraphicsTool) | Implementing a schematic digitizing tool (Code Files: DigitTool) | Set the time extents for a layer then render the layer (Code Files: SetTimeExtentsButton) | ArcGIS Network Analyst extension barrier location editor (Code Files: EditorForm) | Custom subtyped command and tool (Code Files: PolyFeedbackTools) | RSS weather layer (Code Files: RSSWeatherIdentifyObject) | Create a custom tool (Code Files: DrawGraphicLine) | Custom feedback tool and font drop-down list tool control (Code Files: ToolSample)

.NET Related Topics

Create a custom tool | Display events | How to draw a point on the screen | How to draw a polygon on the screen | How to draw a polyline on the screen | How to draw a rectangle on the screen | How to get map coordinates from screen coordinates | How to get screen coordinates from map coordinates | How to work with IEllipticArc properties | Invalidating the display | Selection trackers | Working with PageLayout elements