.. wxPython Phoenix documentation
This file was generated by Phoenix's sphinx generator and associated
tools, do not edit by hand.
Copyright: (c) 2011-2020 by Total Control Software
License: wxWindows License
.. include:: headings.inc
.. _wx.Metafile:
==========================================================================================================================================
|phoenix_title| **wx.Metafile**
==========================================================================================================================================
A ** :ref:`wx.Metafile` ** represents the MS Windows metafile object, so metafile operations have no effect in X.
In wxWidgets, only sufficient functionality has been provided for copying a graphic to the clipboard; this may be extended in a future version.
Presently, the only way of creating a metafile is to use a :ref:`wx.MetafileDC`.
.. availability:: Only available for MSW.
.. seealso:: :ref:`wx.MetafileDC`
|
|class_hierarchy| Class Hierarchy
=================================
.. raw:: html

Inheritance diagram for class
Metafile:
|
|method_summary| Methods Summary
================================
================================================================================ ================================================================================
:meth:`~wx.Metafile.__init__` Constructor.
:meth:`~wx.Metafile.IsOk` Returns ``True`` if the metafile is valid.
:meth:`~wx.Metafile.Play` Plays the metafile into the given device context, returning ``True`` if successful.
:meth:`~wx.Metafile.SetClipboard` Passes the metafile data to the clipboard.
================================================================================ ================================================================================
|
|api| Class API
===============
.. class:: wx.Metafile(Object)
**Possible constructors**::
Metafile(filename: str='') -> None
A Metafile represents the MS Windows metafile object, so metafile
operations have no effect in X.
.. method:: __init__(self, filename: str='')
Constructor.
If a filename is given, the Windows disk metafile is read in. Check whether this was performed successfully by using the :meth:`IsOk` member.
:param `filename`:
:type `filename`: string
:rtype: `None`
.. method:: IsOk(self)
Returns ``True`` if the metafile is valid.
:rtype: `bool`
.. method:: Play(self, dc : DC)
Plays the metafile into the given device context, returning ``True`` if successful.
:param `dc`:
:type `dc`: wx.DC
:rtype: `bool`
.. method:: SetClipboard(self, width: int=0, height: int=0)
Passes the metafile data to the clipboard.
The metafile can no longer be used for anything, but the :ref:`wx.Metafile` object must still be destroyed by the application.
Below is an example of metafile, metafile device context and clipboard use from the ``hello.cpp`` example. Note the way the metafile dimensions are passed to the clipboard, making use of the device context's ability to keep track of the maximum extent of drawing commands.
::
dc = wx.MetafileDC()
if dc.IsOk():
self.Draw(dc)
mf = dc.Close()
if mf:
mf.SetClipboard(dc.MaxX() + 10, dc.MaxY() + 10)
:param `width`:
:type `width`: int
:param `height`:
:type `height`: int
:rtype: `bool`