搜索
简帛阁>技术文章>wxpython绘制圆角窗体

wxpython绘制圆角窗体

本文实例为大家分享了wxpython绘制圆角窗体的具体代码,供大家参考,具体内容如下

# -*- coding:gbk -*-
 
import wx
 
class RCDialog(wx.Dialog):
 def __init__(self,parent=None,size=wx.DefaultSize):
  wx.Dialog.__init__(self, parent, -1, size=size,
   style=wx.FRAME_SHAPED |
     wx.SIMPLE_BORDER |
     wx.FRAME_NO_TASKBAR |
     wx.STAY_ON_TOP)
 
  self.Centre( wx.BOTH)
 
  # linux平台
  if wx.Platform == "__WXGTK__":
   self.Bind(wx.EVT_WINDOW_CREATE, self.SetBalloonShape)
  else:
   self.SetBalloonShape()
 
 
 
  self.Bind(wx.EVT_LEFT_DOWN, self.OnLeftDown)
  self.Bind(wx.EVT_MOTION, self.OnMouseMove)
  self.Bind(wx.EVT_RIGHT_UP, self.OnRightUp)
 
 def OnLeftDown(self, event):
  pos = event.GetPosition()
  x, y = self.ClientToScreen(event.GetPosition())
  ox, oy = self.GetPosition()
  dx = x - ox
  dy = y - oy
  self.delta = ((dx, dy))
 
 def OnMouseMove(self, event):
  if event.Dragging() and event.LeftIsDown():
   x, y = self.ClientToScreen(event.GetPosition())
   fp = (x - self.delta[0], y - self.delta[1])
   self.Move(fp)
 
 def OnRightUp(self, evt):
  self.Close()
 
 def SetBalloonShape(self, event=None):
  width, height = self.GetSize()
  bmp = wx.EmptyBitmap(width,height)
  dc = wx.BufferedDC(None, bmp)
  dc.BeginDrawing()
  dc.SetBackground(wx.Brush(wx.Colour(0,0,0), wx.SOLID))
  dc.Clear()
 
  dc.DrawRoundedRectangle(0, 0, width-1, height-1, 4)
  dc.EndDrawing()
 
  r = wx.RegionFromBitmapColour(bmp, wx.Colour(0,0,0))
  self.hasShape = self.SetShape(r)

 
if __name__ == "__main__":
 app = wx.PySimpleApp()
 dlg = RCDialog(size=(376,282))
 dlg.Show()
 app.MainLoop()
本文实例为大家分享了wxpython绘制窗体的具体代码,供大家参考,具体内容如下*coding:gbk*importwxclassRCDialog(wxDialog):def__init__(se
本文实例为大家分享了wxPython窗体拆分布局的具体代码,供大家参考,具体内容如下BoxSizer布局管理参数说明:orient:wxVERTICAL(垂直方向)或wxHORIZONTAL(水平方向
本文实例为大家分享了wxpython绘制音频的具体代码,供大家参考,具体内容如下*coding:utf8*使用wxPython的绘图模块wxPyPlot,需要数据可视化的时候,无需再借用其他的库或模
如何界面存在frame1与frame2,通过frame1打开页面frame2,并将frame2的值传递给frame1可以使用回调函数传值参考具体代码如下:*coding:utf8*Pythoncode
使用Matplotlib在wxPython的Panel上绘制曲线图,需要导入:importnumpyfrommatplotlibbackendsbackend_wxaggimportFigureCa
wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。wxPython是作为优秀的跨平台GUI库wxWidgets的Pytho
本文实例为大家分享了wxPython绘制形状的具体代码,供大家参考,具体内容如下绘制形状除了绘制文本和位图,DC也可以绘制任意的形状和线。这允许我们完全自定义窗口部件和控件的外观。示例说明利用Pai
本文实例讲述了MFC绘制不规则窗体的方法。分享给大家供大家参考。具体分析如下:实现过程:1、首先创建基于DLG的MFC应用程序,命名为:tryBGDlg,并将DLG的属性设置为:TitleBar:F
目录StartwxFrameSizeandPositionStartimportwx导入模块appwxApp()建立对象,所有wx程序必须有一个应用对象framewxFrame(None,id1,'s
网上看到的很多winform窗体设计代码都比较累赘,这里分享一个少量代码就可以实现的。主要运用了SystemDrawingDrawing2D。效果图代码如下privatevoidBeautiL