1

「wxpythoninaction」を読んでいて、本の中でペイントウィンドウのデモを見つけました。cpickle(*。paint)を使用してデータを保存します。ウィンドウ内のデータをjpgファイルとして保存する方法を知りたいので、標準の画像ビューアで表示できます。

本のsaveas関数:

def OnSaveAs(self, event):
        file_wildcard = "Paint files(*.paint)|*.paint|All files(*.*)|*.*"
        dlg = wx.FileDialog(self, "save paint as ...", os.getcwd(), style=wx.SAVE|wx.OVERWRITE_PROMPT, wildcard=file_wildcard)
        if dlg.ShowModal() == wx.ID_OK:
            filename = dlg.GetPath()
            if not os.path.splitext(filename[1]):
                filename += ".paint"
            self.filename = filename
            self.SaveFile()
            self.SetTitle(self.Title + " -- " + self.filename)
        dlg.Destroy()

def SaveFile(self):
    if self.filename:
        data = self.paint.GetLinesData()
        f = open(self.filename, "w")
        cPickle.dump(data, f)
        f.close
4

1 に答える 1

0

少し前に、wxPython を使用してアプリケーションのスクリーンショットを撮る方法に関するチュートリアルを書きました: http://www.blog.pythonlibrary.org/2010/04/16/how-to-take-a-screenshot-of-your -wxpython-app-and-print-it/

おそらくウィンドウ全体が必要になるわけではないので、パネルのサイズまたはフレームの側面に対する図面のサイズを計算する必要があるでしょう。しかし、この例の残りのコードから始めることができます。

于 2013-02-28T14:19:41.563 に答える