wxPython – Imagen en el botón en Python

En este artículo en particular, aprenderemos cómo podemos agregar una imagen a un botón en la GUI usando wxPython. Esto se puede lograr usando el BitmapButton()constructor de wx.BitmapButton classwx.

Se admiten los siguientes estilos de ventana:

  • wx.BU_LEFT: Justifica a la izquierda la etiqueta de mapa de bits.
  • wx.BU_TOP: alinea la etiqueta de mapa de bits con la parte superior del botón.
  • wx.BU_RIGHT: Justifica a la derecha la etiqueta de mapa de bits.
  • wx.BU_BOTTOM: alinea la etiqueta de mapa de bits con la parte inferior del botón.

Sintaxis:

wx.StaticText(self, parent, id=ID_ANY, bitmap=NullBitmap, 
              pos=DefaultPosition, size=DefaultSize, style=0, 
           validator= DefaultVadator, name=StaticTextNameStr)

Parámetros:

Parámetro Tipo de entrada Descripción
padre wx.Ventana Ventana principal. No debe ser Ninguno.
identificación wx.ID de ventana Identificador de controles. Un valor de -1 denota un valor predeterminado.
mapa de bits wx.Bitmap Bit que se mostrará.
posición wx.Punto Posición de la ventana.
Talla wx.Ventana Tamaño de ventana.
estilo largo Estilo de ventana.
validador wx.Validador Validador de ventana.
nombre cuerda Nombre de la ventana.

Código de ejemplo:

# import wxPython
import wx
  
# event function for button
def onButton(event):
    print("Button pressed.")
  
app = wx.App()
frame = wx.Frame(None, -1, 'win.py')
frame.SetDimensions(0, 0, 200, 70)
panel = wx.Panel(frame, wx.ID_ANY)
  
# open image from disk
bmp = wx.Bitmap("/home/rahul101/Desktop/wxPython/images.png", wx.BITMAP_TYPE_ANY)
# create image button using BitMapButton constructor
button = wx.BitmapButton(panel, id = wx.ID_ANY, bitmap = bmp,
                          size =(bmp.GetWidth()+10, bmp.GetHeight()+10))
   
button.Bind(wx.EVT_BUTTON, onButton)
button.SetPosition((10, 10))
  
frame.Show()
frame.Centre()
app.MainLoop()

Producción :

Publicación traducida automáticamente

Artículo escrito por RahulSabharwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *