def ver_detalles(id): QMessageBox.about(MainWindow, "Info", "Detalles del registro de id: " + str(id)) ui_ver_detalles_pelicula.setupUi(MainWindow) pelicula = operaciones_bd.obtener_pelicula_por_id(id) ui_ver_detalles_pelicula.entrada_titulo_pelicula.setText( str(pelicula.titulo)) ui_ver_detalles_pelicula.entrada_anio_pelicula.setText(str(pelicula.anio)) ui_ver_detalles_pelicula.entrada_duracion_pelicula.setText( str(pelicula.duracion)) ui_ver_detalles_pelicula.entrada_pais_pelicula.setText(pelicula.pais) ui_ver_detalles_pelicula.entrada_reparto_pelicula.setText(pelicula.reparto) ui_ver_detalles_pelicula.entrada_genero_pelicula.setText(pelicula.genero) ui_ver_detalles_pelicula.entrada_sinopsis_pelicula.setText( pelicula.sinopsis) ui_ver_detalles_pelicula.cbx_formato.setCurrentText(pelicula.formato) if pelicula.valoracion == "Mala": ui_ver_detalles_pelicula.rbtn_mala.setChecked(True) if pelicula.valoracion == "Regular": ui_ver_detalles_pelicula.rbtn_regular.setChecked(True) if pelicula.valoracion == "Buena": ui_ver_detalles_pelicula.rbtn_buena.setChecked(True) if pelicula.valoracion == "Muy buena": ui_ver_detalles_pelicula.rbtn_muy_buena.setChecked(True) if pelicula.vista: ui_ver_detalles_pelicula.chbx_vista.setChecked(True) pixmap = QPixmap("imagenes/" + str(pelicula.id) + ".jpg") alto_lbl_imagen = ui_ver_detalles_pelicula.lbl_imagen.height() pixmap_redimensianado = pixmap.scaledToHeight(alto_lbl_imagen) ui_ver_detalles_pelicula.lbl_imagen.setPixmap(pixmap_redimensianado)
def mostrar_table_widget_musica(): ui_ventana_table_widget.setupUi(MainWindow) musica = operaciones_bd.obtener_musica() fila = 0 for m in musica: ui_ventana_table_widget.tabla_musica.insertRow(fila) columna_indice = 0 for valor in m: celda = QTableWidgetItem(str(valor)) ui_ventana_table_widget.tabla_musica.setItem( fila, columna_indice, celda) columna_indice += 1 boton_borrar = QPushButton("Borrar") boton_borrar.clicked.connect(partial(borrar_musica, m[0])) ui_ventana_table_widget.tabla_musica.setCellWidget( fila, 10, boton_borrar) boton_editar = QPushButton("Editar") boton_editar.clicked.connect(partial(editar_musica, m[0])) ui_ventana_table_widget.tabla_musica.setCellWidget( fila, 11, boton_editar) label_miniatura = QLabel() ruta_imagen = "imagenes/" + str(m[0]) + ".jpg" objeto_path = Path(ruta_imagen) existe = objeto_path.is_file() if existe == True: pixmap = QPixmap(ruta_imagen) pixmap_redim = pixmap.scaledToHeight(40) label_miniatura.setPixmap(pixmap_redim) ui_ventana_table_widget.tabla_musica.setCellWidget( fila, 9, label_miniatura) fila += 1
def setupUi(self, my_win): super().setupUi(my_win) self.my_win = my_win #creación la tabla canciones = listar_canciones_lista() fila = 0 for c in canciones: columna = 0 self.tableWidget.insertRow(fila) for i in c: celda = QTableWidgetItem(str(i)) self.tableWidget.setItem(fila, columna, celda) columna += 1 #añado la imagen correspondiente al nº de id portada = QLabel() objeto_ruta = pathlib.Path("imagenes/" + str(c[0]) + ".jpg") existe = objeto_ruta.is_file() if existe: pixmap = QPixmap("imagenes/" + str(c[0]) + ".jpg") redimensionar_img = pixmap.scaledToHeight(40) portada.setPixmap(redimensionar_img) self.tableWidget.setCellWidget(fila, columna, portada) fila += 1 self.btn_editar.clicked.connect( partial(self.editar_eliminar_cancion, "editar")) self.btn_eliminar.clicked.connect( partial(self.editar_eliminar_cancion, "eliminar"))
def __init__(self, parent): QWizard.__init__(self, parent) self.setWindowTitle(__appname__ + ' ' + _('welcome wizard')) p = QPixmap() p.loadFromData(open(P('content_server/calibre.png'), 'rb').read()) self.setPixmap(self.LogoPixmap, p.scaledToHeight(80, Qt.SmoothTransformation)) self.setPixmap(self.WatermarkPixmap, QPixmap(I('welcome_wizard.png'))) self.setPixmap(self.BackgroundPixmap, QPixmap(I('wizard.png'))) self.device_page = DevicePage() self.library_page = LibraryPage() self.library_page.retranslate.connect(self.retranslate) self.finish_page = FinishPage() self.set_finish_text() self.kindle_page = KindlePage() self.stanza_page = StanzaPage() self.setPage(self.library_page.ID, self.library_page) self.setPage(self.device_page.ID, self.device_page) self.setPage(self.finish_page.ID, self.finish_page) self.setPage(self.kindle_page.ID, self.kindle_page) self.setPage(self.stanza_page.ID, self.stanza_page) self.device_extra_page = None nh, nw = min_available_height() - 75, available_width() - 30 if nh < 0: nh = 580 if nw < 0: nw = 400 nh = min(400, nh) nw = min(580, nw) self.resize(nw, nh) self.set_button_texts()
def cargar_ver_detalles(id): QMessageBox.about(MainWindow, "Info", "ver detalles del registro de id: " + str(id)) ui_ventana_ver_detalles_libro.setupUi(MainWindow) libro = operaciones_bd.obtener_libro_por_id(id) ui_ventana_ver_detalles_libro.entrada_titulo_libro.setText(libro.titulo) ui_ventana_ver_detalles_libro.entrada_paginas_libro.setText( str(libro.paginas)) ui_ventana_ver_detalles_libro.entrada_precio_libro.setText( str(libro.precio)) if libro.digital: ui_ventana_ver_detalles_libro.checkbox_digital.setChecked(True) ui_ventana_ver_detalles_libro.combo_tapa.setCurrentText(libro.tapa) if libro.envio == "standar": ui_ventana_ver_detalles_libro.radio_standar.setChecked(True) if libro.envio == "urgente": ui_ventana_ver_detalles_libro.radio_urgente.setChecked(True) if libro.envio == "prioritario": ui_ventana_ver_detalles_libro.radio_prioritario.setChecked(True) #para cuando se quiera editar libro, cargo su imagen en #el label imagen pixmap = QPixmap("imagenes/" + str(libro.id) + ".jpg") alto_label_imagen = ui_ventana_ver_detalles_libro.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_ver_detalles_libro.label_imagen.setPixmap(pixmap_redim)
def __init__(self, parent): QWizard.__init__(self, parent) self.setWindowTitle(__appname__+' '+_('welcome wizard')) p = QPixmap() p.loadFromData(open(P('content_server/calibre.png'), 'rb').read()) self.setPixmap(self.LogoPixmap, p.scaledToHeight(80, Qt.SmoothTransformation)) self.setPixmap(self.WatermarkPixmap, QPixmap(I('welcome_wizard.png'))) self.setPixmap(self.BackgroundPixmap, QPixmap(I('wizard.png'))) self.device_page = DevicePage() self.library_page = LibraryPage() self.library_page.retranslate.connect(self.retranslate) self.finish_page = FinishPage() self.set_finish_text() self.kindle_page = KindlePage() self.stanza_page = StanzaPage() self.setPage(self.library_page.ID, self.library_page) self.setPage(self.device_page.ID, self.device_page) self.setPage(self.finish_page.ID, self.finish_page) self.setPage(self.kindle_page.ID, self.kindle_page) self.setPage(self.stanza_page.ID, self.stanza_page) self.device_extra_page = None nh, nw = min_available_height()-75, available_width()-30 if nh < 0: nh = 580 if nw < 0: nw = 400 nh = min(400, nh) nw = min(580, nw) self.resize(nw, nh) self.set_button_texts()
def seleccionar_imagen(self): file = QFileDialog.getOpenFileName() ruta = file[0] #seleccionamos sólo la ruta shutil.copy(ruta, "temporal/img.jpg") pixmap = QPixmap("temporal/img.jpg") img_redim = pixmap.scaledToHeight( self.lbl_img.height()) #imagen se ajusta de alto (alto del label) self.lbl_img.setPixmap(img_redim)
def seleccionar_imagen_editar(): archivo = QFileDialog.getOpenFileName(MainWindow) print(archivo) ruta_archivo = archivo[0] shutil.copy(ruta_archivo, "temporal/imagen.jpg") pixmap = QPixmap("temporal/imagen.jpg") alto_lbl_imagen = ui_editar_pelicula.lbl_imagen.height() pixmap_redimensianado = pixmap.scaledToHeight(alto_lbl_imagen) ui_editar_pelicula.lbl_imagen.setPixmap(pixmap_redimensianado)
def seleccionar_imagen(): archivo = QFileDialog.getOpenFileName(MainWindow) print(archivo) ruta_archivo = archivo[0] shutil.copy(ruta_archivo, "temporal/imagen.jpg") pixmap = QPixmap("temporal/imagen.jpg") ui_registrar_musica.label_imagen.setPixmap(pixmap) alto_label_imagen = ui_registrar_musica.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_registrar_musica.label_imagen.setPixmap(pixmap_redim)
def open_file(self): directory = QFileDialog.getOpenFileName(self, "选择图片", "./", "(*.jpg)") p = QPixmap(directory[0]) if p.width() > p.height(): p = p.scaledToHeight(self.height() // 2) else: p = p.scaledToWidth(self.width() // 2) self.image.setPixmap(p) self.image.filepath = directory[0]
def seleccionar_imagen_editar(): archivo = QFileDialog.getOpenFileName(MainWindow) print(archivo) ruta_archivo = archivo[0] shutil.copy(ruta_archivo, "/imagen.jpg") pixmap = QPixmap("/imagen.jpg") ancho_label_imagen = ui_ventana_editar_accesorio.label_imagen.width() alto_label_imagen = ui_ventana_editar_accesorio.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_editar_accesorio.label_imagen.setPixmap(pixmap_redim)
def mostrar_table_widget(): ui_ventana_table_widget.setupUi(MainWindow) #vamos a rellenar la tabla: libros = operaciones_bd.obtener_libros() fila = 0 for l in libros: ui_ventana_table_widget.tabla_libros.insertRow(fila) #y ahora meto las celdas correspondientes en la fila columna_indice = 0 for valor in l: if columna_indice == 4: if valor == 0: valor = "NO" else: valor = "SI" celda = QTableWidgetItem(str(valor)) ui_ventana_table_widget.tabla_libros.setItem( fila, columna_indice, celda) columna_indice += 1 #despues de rellenar los datos en la fila #boton ver detalles: boton_ver_detalles = QPushButton("ver detalles") boton_ver_detalles.clicked.connect(partial(cargar_ver_detalles, l[0])) ui_ventana_table_widget.tabla_libros.setCellWidget( fila, 3, boton_ver_detalles) #voy a meterle un boton de borrar boton_borrar = QPushButton("borrar") boton_borrar.clicked.connect(partial(borrar_libro, l[0])) ui_ventana_table_widget.tabla_libros.setCellWidget( fila, 4, boton_borrar) boton_editar = QPushButton("editar") boton_editar.clicked.connect(partial(editar_libro, l[0], l[1])) ui_ventana_table_widget.tabla_libros.setCellWidget( fila, 5, boton_editar) #muestro una miniatura: label_miniatura = QLabel() ruta_imagen = "imagenes/" + str(l[0]) + ".jpg" objeto_path = Path(ruta_imagen) existe = objeto_path.is_file() if existe == True: #Path("imagenes/" + l[0] + ".jpg").is_file() : pixmap = QPixmap(ruta_imagen) pixmap_redim = pixmap.scaledToHeight(40) label_miniatura.setPixmap(pixmap_redim) ui_ventana_table_widget.tabla_libros.setCellWidget( fila, 6, label_miniatura) fila += 1
def editar_pelicula(id_a_editar): QMessageBox.about(MainWindow, "Info", "Vas editar el registro de id: " + str(id_a_editar)) ui_editar_pelicula.setupUi(MainWindow) pelicula_a_editar = operaciones_bd.obtener_pelicula_por_id(id_a_editar) ui_editar_pelicula.entrada_titulo_pelicula.setText( str(pelicula_a_editar.titulo)) ui_editar_pelicula.lbl_error_titulo.clear() ui_editar_pelicula.entrada_anio_pelicula.setText( str(pelicula_a_editar.anio)) ui_editar_pelicula.lbl_error_anio.clear() ui_editar_pelicula.entrada_duracion_pelicula.setText( str(pelicula_a_editar.duracion)) ui_editar_pelicula.lbl_error_duracion.clear() ui_editar_pelicula.entrada_pais_pelicula.setText( str(pelicula_a_editar.pais)) ui_editar_pelicula.lbl_error_pais.clear() ui_editar_pelicula.entrada_reparto_pelicula.setText( str(pelicula_a_editar.reparto)) ui_editar_pelicula.lbl_error_reparto.clear() ui_editar_pelicula.entrada_genero_pelicula.setText( str(pelicula_a_editar.genero)) ui_editar_pelicula.lbl_error_genero.clear() ui_editar_pelicula.entrada_sinopsis_pelicula.setText( str(pelicula_a_editar.sinopsis)) ui_editar_pelicula.lbl_error_sinopsis.clear() ui_editar_pelicula.cbx_formato.setCurrentText(pelicula_a_editar.formato) if pelicula_a_editar.valoracion == "Mala": ui_editar_pelicula.rbtn_mala.setChecked(True) if pelicula_a_editar.valoracion == "Regular": ui_editar_pelicula.rbtn_regular.setChecked(True) if pelicula_a_editar.valoracion == "Buena": ui_editar_pelicula.rbtn_buena.setChecked(True) if pelicula_a_editar.valoracion == "Muy buena": ui_editar_pelicula.rbtn_muy_buena.setChecked(True) if pelicula_a_editar.vista: ui_editar_pelicula.chbx_vista.setChecked(True) pixmap = QPixmap("imagenes/" + str(pelicula_a_editar.id) + ".jpg") alto_lbl_imagen = ui_editar_pelicula.lbl_imagen.height() pixmap_redimensianado = pixmap.scaledToHeight(alto_lbl_imagen) ui_editar_pelicula.lbl_imagen.setPixmap(pixmap_redimensianado) ui_editar_pelicula.btn_seleccionar_archivo.clicked.connect( seleccionar_imagen_editar) ui_editar_pelicula.btn_guardar_cambios_pelicula.clicked.connect( partial(guardar_cambios_pelicula, pelicula_a_editar.id))
def editar_juego(id, juego): juegos = Juego() QMessageBox.about( MainWindow, "Info", "Vas a editar un registro de ID: " + str(id) + " Juego: " + juego) ui_ventana_editar_juegos.setupUi(MainWindow) #sacar de base de datos toda la informacion a editar juego_a_editar = operaciones_bd.obtener_juegos_por_id(id) ui_ventana_editar_juegos.entrada_tipo_juego.setText( juego_a_editar.tipodejuego) ui_ventana_editar_juegos.label_error_tipo.clear() ui_ventana_editar_juegos.entrada_nombre_juego.setText( juego_a_editar.nombrejuego) ui_ventana_editar_juegos.label_error_nombre.clear() ui_ventana_editar_juegos.entrada_tipo_plataforma.setText( juego_a_editar.plataforma) ui_ventana_editar_juegos.label_error_plataforma.clear() ui_ventana_editar_juegos.entrada_anio_juego.setText( str(juego_a_editar.añosalida)) ui_ventana_editar_juegos.label_error_anio.clear() ui_ventana_editar_juegos.entrada_precio_juego.setText( str(juego_a_editar.precio)) ui_ventana_editar_juegos.label_error_precio.clear() juegos.precio = ui_ventana_editar_juegos.entrada_precio_juego.text() ui_ventana_editar_juegos.checkbox_digital.setChecked( juego_a_editar.digital) ui_ventana_editar_juegos.combo_edicion.setCurrentText( juego_a_editar.edicion) if juego_a_editar.digital: ui_ventana_editar_juegos.checkbox_digital.setChecked(True) ui_ventana_editar_juegos.combo_edicion.setCurrentText( juego_a_editar.edicion) if juego_a_editar.pago == "Tarjeta Credito": ui_ventana_editar_juegos.radio_tarjeta_credito.setChecked(True) if juego_a_editar.pago == "Paypal": ui_ventana_editar_juegos.radio_paypal.setChecked(True) #para editar juego y cargar imagen en label imagen pixmap = QPixmap("imagenes/" + str(juego_a_editar.id) + ".jpg") alto_label_imagen = ui_ventana_editar_juegos.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_editar_juegos.label_imagen.setPixmap(pixmap_redim) ui_ventana_editar_juegos.boton_guardar_cambios_juego.clicked.connect( partial(guardar_cambios_juego, juego_a_editar.id)) ui_ventana_editar_juegos.boton_seleccionar_archivo.clicked.connect( seleccionar_caratula_editar)
def seleccionar_imagen(): archivo = QFileDialog.getOpenFileName(MainWindow) print(archivo) ruta_archivo = archivo[0] shutil.copy(ruta_archivo, "temporal/imagen.jpg") pixmap = QPixmap("temporal/imagen.jpg") ancho_label_imagen = ui_registrar_libro.label_imagen.width() alto_label_imagen = ui_registrar_libro.label_imagen.height() #redimension por ancho #pixmap_redim = pixmap.scaledToWidth(ancho_label_imagen) #ui_registrar_libro.label_imagen.setPixmap(pixmap_redim) #redimension por alto pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_registrar_libro.label_imagen.setPixmap(pixmap_redim)
def editar_videojuego(self): #instanciamos una nueva ventana para modificar en ella los datos del videojuego self.ventana_modificar = DialogModificarVideojuego_aplicacion() #extraemos la id de la fila seleccionada para que nos devuelva nuevamente los datos del videojuego mediante la función buscar_videojuegos_bd fila_seleccionada = self.tbl_juegos_encontrados.currentRow() texto_de_columna_id = self.tbl_juegos_encontrados.item( fila_seleccionada, 0).text() valores = dict() valores["id"] = texto_de_columna_id videojuego_a_editar = operaciones_bbdd.buscar_videojuegos_bd(valores) #rellenamos los campos de la nueva ventana con la información devuelta por la función buscar_videojuegos_bd self.ventana_modificar.ui.le_id.setText(str(videojuego_a_editar[0][0])) self.ventana_modificar.ui.le_titulo.setText(videojuego_a_editar[0][1]) self.ventana_modificar.enlazar_metacritic() #indicamos que radio button debe aparecer marcado y que item del combobox señalada if videojuego_a_editar[0][2] in constantes.pc: self.ventana_modificar.ui.rb_pc.setChecked(True) elif videojuego_a_editar[0][2] in constantes.sega: self.ventana_modificar.ui.rb_sega.setChecked(True) elif videojuego_a_editar[0][2] in constantes.nintendo: self.ventana_modificar.ui.rb_nintendo.setChecked(True) elif videojuego_a_editar[0][2] in constantes.sony: self.ventana_modificar.ui.rb_sony.setChecked(True) elif videojuego_a_editar[0][2] in constantes.microsoft: self.ventana_modificar.ui.rb_microsoft.setChecked(True) self.ventana_modificar.ui.cmb_plataforma.setCurrentText( videojuego_a_editar[0][2]) #seguimos rellenando los campos self.ventana_modificar.ui.le_genero.setText(videojuego_a_editar[0][3]) self.ventana_modificar.ui.dspb_nota.setValue( float(videojuego_a_editar[0][4])) self.ventana_modificar.ui.chb_prestado.setChecked( videojuego_a_editar[0][5]) self.ventana_modificar.ui.le_apuntes.setText(videojuego_a_editar[0][6]) #comprobamos si el videojuego tiene imagen asociada para mostrarla en la etiqueta correspondiente ruta_imagen = "aplicaciones\\../imagenes/" + str( videojuego_a_editar[0][0]) + ".jpg" objeto_path = pathlib.Path(ruta_imagen) existe = objeto_path.is_file() if existe: pixmap = QPixmap(ruta_imagen) alto_label = self.ventana_modificar.ui.lbl_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label) self.ventana_modificar.ui.lbl_imagen.setPixmap(pixmap_redim) self.ventana_modificar.show()
def mostrar_table_widget(): ui_ventana_table_widget.setupUi(MainWindow) accesorios = operaciones_bd.obtener_accesorios() fila = 0 for l in accesorios: ui_ventana_table_widget.tabla_accesorios.insertRow(fila) columna_indice = 0 for valor in l: if columna_indice == 6: if valor == 0: valor = "NO" else: valor = "SI" celda = QTableWidgetItem(str(valor)) ui_ventana_table_widget.tabla_accesorios.setItem( fila, columna_indice, celda) columna_indice += 1 boton_ver_detalles = QPushButton("ver detalles") boton_ver_detalles.clicked.connect(partial(cargar_ver_detalles, l[0])) ui_ventana_table_widget.tabla_accesorios.setCellWidget( fila, 4, boton_ver_detalles) boton_borrar = QPushButton("borrar") boton_borrar.clicked.connect(partial(borrar_accesorio, l[0])) ui_ventana_table_widget.tabla_accesorios.setCellWidget( fila, 5, boton_borrar) boton_editar = QPushButton("editar") boton_editar.clicked.connect(partial(editar_accesorio, l[0], l[1])) ui_ventana_table_widget.tabla_accesorios.setCellWidget( fila, 6, boton_editar) label_miniatura = QLabel() ruta_imagen = "imagenes/" + str(l[0]) + ".jpg" objeto_path = Path(ruta_imagen) existe = objeto_path.is_file() if existe == True: #Path("imagenes/" + l[0] + ".jpg").is_file() : pixmap = QPixmap(ruta_imagen) pixmap_redim = pixmap.scaledToHeight(40) label_miniatura.setPixmap(pixmap_redim) ui_ventana_table_widget.tabla_accesorios.setCellWidget( fila, 7, label_miniatura) fila += 1
def sacar_listado(self): #reinicializamos el widget para mostrar la información self.tbl_listado_videojuegos.clearContents() #obtenemos todos los videojuegos videojuegos = operaciones_bbdd.obtener_videojuegos_bd() fila = 0 #recorremos el listado de videojuegos y vamos añadiendo a la tabla la información a visualizar for videojuego in videojuegos: columna = 0 self.tbl_listado_videojuegos.insertRow(fila) for campo in videojuego: if columna == 5 and campo == 0: campo = "No" elif columna == 5 and campo == 1: campo = "Si" celda = QtWidgets.QTableWidgetItem(str(campo)) #solicitamos alinear el texto de las celdas al centro celda.setTextAlignment(QtCore.Qt.AlignCenter) self.tbl_listado_videojuegos.setItem(fila, columna, celda) columna += 1 #incluimos la imagen asociada al videojuego (si la tuviera) en la última columna icono = QtWidgets.QLabel() ruta_imagen = "aplicaciones\\../imagenes/" + str( videojuego[0]) + ".jpg" objeto_path = pathlib.Path(ruta_imagen) existe = objeto_path.is_file() if existe: pixmap = QPixmap("aplicaciones\\../imagenes/" + str(videojuego[0]) + ".jpg") pixmap_redim = pixmap.scaledToHeight(100) icono.setPixmap(pixmap_redim) self.tbl_listado_videojuegos.setCellWidget( fila, columna, icono) else: #si no existe imagen se indica mediante el texto "Sin Imagen" centrado sin_imagen = QtWidgets.QTableWidgetItem("Sin Imagen") sin_imagen.setTextAlignment(QtCore.Qt.AlignCenter) self.tbl_listado_videojuegos.setItem(fila, columna, sin_imagen) fila += 1 #ajustamos las columnas al contenido de las celdas self.tbl_listado_videojuegos.resizeColumnsToContents() #indicamos el alto de las filas para que se puedan visualizar mínimamente las imágenes self.tbl_listado_videojuegos.verticalHeader().setDefaultSectionSize( 100) #finalmente indicamos en etiqueta la cantidad de videojuegos encontrados self.lbl_juegos_listados.setText("Juegos listados: {}".format( len(videojuegos)))
def onSelectionChange (self): warrior = self.model.selectedWarrior[self.model.first_selected] p = QPixmap(warrior.attribs['picture']) diff_V = p.height()/self.picture.height() diff_H = p.width()/self.picture.width() if not p.isNull(): if diff_V < diff_H: p = p.scaledToHeight(self.picture.height()) else: p = p.scaledToWidth(self.picture.width()) self.picture.setPixmap(p) self.Title.setText(warrior.name) self.faction_name.setText(warrior.faction().name) self.empire_name.setText(warrior.empire().name) self.royaume_name.setText(warrior.kingdom().name) self.groupe_name.setText(warrior.groupe().name)
def mostrar_table_widget(): ui_table_widget_peliculas.setupUi(MainWindow) peliculas = operaciones_bd.obtener_peliculas() fila = 0 for p in peliculas: ui_table_widget_peliculas.tabla_peliculas.insertRow(fila) columna_indice = 0 for valor in p: if columna_indice == 6: if valor == 0: valor = "No" else: valor = "Sí" celda = QTableWidgetItem(str(valor)) ui_table_widget_peliculas.tabla_peliculas.setItem( fila, columna_indice, celda) columna_indice += 1 boton_ver_detalles = QPushButton("VER") boton_ver_detalles.clicked.connect(partial(ver_detalles, p[0])) ui_table_widget_peliculas.tabla_peliculas.setCellWidget( fila, 7, boton_ver_detalles) boton_borrar = QPushButton("BORRAR") boton_borrar.clicked.connect(partial(borrar_pelicula, p[0])) ui_table_widget_peliculas.tabla_peliculas.setCellWidget( fila, 9, boton_borrar) boton_editar = QPushButton("EDITAR") boton_editar.clicked.connect(partial(editar_pelicula, p[0])) ui_table_widget_peliculas.tabla_peliculas.setCellWidget( fila, 8, boton_editar) label_miniatura = QLabel() ruta_imagen = "imagenes/" + str(p[0]) + ".jpg" objeto_path = Path(ruta_imagen) existe = objeto_path.is_file() if existe == True: pixmap = QPixmap(ruta_imagen) pixmap_redimensionado = pixmap.scaledToHeight(40) label_miniatura.setPixmap(pixmap_redimensionado) ui_table_widget_peliculas.tabla_peliculas.setCellWidget( fila, 11, label_miniatura) fila += 1
def mostrar_table_widget(): ui_ventana_table_widget.setupUi(MainWindow) juegos = operaciones_bd.obtener_juegos() fila = 0 for l in juegos: ui_ventana_table_widget.tabla_juegos.insertRow(fila) #para añadir las celdas correspondientes columna_indice = 0 for valor in l: if columna_indice == 6: if valor == 0: valor = "NO" else: valor = "SI" celda = QTableWidgetItem(str(valor)) ui_ventana_table_widget.tabla_juegos.setItem( fila, columna_indice, celda) columna_indice += 1 #para meter boton de borrar boton_borrar = QPushButton("Borrar") boton_borrar.clicked.connect(partial(borrar_juego, l[0])) ui_ventana_table_widget.tabla_juegos.setCellWidget( fila, 10, boton_borrar) boton_editar = QPushButton("Editar") boton_editar.clicked.connect(partial(editar_juego, l[0], l[2])) ui_ventana_table_widget.tabla_juegos.setCellWidget( fila, 11, boton_editar) #mostrar una miniatura label_miniatura = QLabel() ruta_imagen = "imagenes/" + str(l[0]) + ".jpg" objeto_path = Path(ruta_imagen) existe = objeto_path.is_file() if existe == True: pixmap = QPixmap(ruta_imagen) pixmap_redim = pixmap.scaledToHeight(40) label_miniatura.setPixmap(pixmap_redim) ui_ventana_table_widget.tabla_juegos.setCellWidget( fila, 9, label_miniatura) fila += 1
def seleccionar_imagen(self): #abrimos ventana para selección de archivo archivo = QtWidgets.QFileDialog.getOpenFileName( self, "Seleccione imagen", "D:\Descargas", "*.jpg") #validamos si el cliente ha cerrado la ventana sin seleccionar ningún archivo para que no de error y cierre de aplicación if archivo[0] != "": #copiamos el archivo a la carpeta "temporal" como "imagen.jpg" y la redimensionamoss para mostrarla en una etiqueta de la ventana ruta_archivo = archivo[0] try: shutil.copy(ruta_archivo, constantes.ruta_temporal + "/imagen.jpg") except: os.makedirs(constantes.ruta_temporal) shutil.copy(ruta_archivo, constantes.ruta_temporal + "/imagen.jpg") pixmap = QPixmap(constantes.ruta_temporal + "/imagen.jpg") alto_label = self.ui.lbl_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label) self.ui.lbl_imagen.setPixmap(pixmap_redim)
def editar_accesorio(id, mascota): QMessageBox.about(MainWindow, "Info", "vas a editar el registro de id: " + str(id)) ui_ventana_editar_accesorio.setupUi(MainWindow) accesorio_a_editar = operaciones_bd.obtener_accesorio_por_id(id) ui_ventana_editar_accesorio.entrada_mascota_accesorio.setText( accesorio_a_editar.mascota) ui_ventana_editar_accesorio.label_error_mascota.clear() ui_ventana_editar_accesorio.entrada_accesorios.setText( str(accesorio_a_editar.accesorio)) ui_ventana_editar_accesorio.label_error_accesorio.clear() ui_ventana_editar_accesorio.entrada_precio_accesorio.setText( str(accesorio_a_editar.precio)) ui_ventana_editar_accesorio.entrada_talla_accesorio.setText( str(accesorio_a_editar.talla)) ui_ventana_editar_accesorio.entrada_tipo_accesorio.setText( str(accesorio_a_editar.tipo)) if accesorio_a_editar.ofertas: ui_ventana_editar_accesorio.checkbox_ofertas.setChecked(True) if accesorio_a_editar.cliente: ui_ventana_editar_accesorio.combo_cliente.setCurrentText( accesorio_a_editar.cliente) if accesorio_a_editar.envio == "standar": ui_ventana_editar_accesorio.radio_standar.setChecked(True) if accesorio_a_editar.envio == "urgente": ui_ventana_editar_accesorio.radio_urgente.setChecked(True) if accesorio_a_editar.envio == "recogida": ui_ventana_editar_accesorio.radio_recogida.setChecked(True) pixmap = QPixmap("imagenes/" + str(accesorio_a_editar.id) + ".jpg") alto_label_imagen = ui_ventana_editar_accesorio.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_editar_accesorio.label_imagen.setPixmap(pixmap_redim) ui_ventana_editar_accesorio.boton_guardar_cambios_accesorio.clicked.connect( partial(guardar_cambios_accesorio, accesorio_a_editar.id)) ui_ventana_editar_accesorio.boton_seleccionar_archivo.clicked.connect( seleccionar_imagen_editar)
def editar_libro(id, titulo): QMessageBox.about( MainWindow, "Info", "vas a editar el registro de id: " + str(id) + " titulo: " + titulo) ui_ventana_editar_libro.setupUi(MainWindow) #lo suyo ahora es sacar de base de datos toda la informacion a editar libro_a_editar = operaciones_bd.obtener_libro_por_id(id) ui_ventana_editar_libro.entrada_titulo_libro.setText(libro_a_editar.titulo) ui_ventana_editar_libro.label_error_titulo.clear() ui_ventana_editar_libro.entrada_paginas_libro.setText( str(libro_a_editar.paginas)) ui_ventana_editar_libro.label_error_paginas.clear() ui_ventana_editar_libro.entrada_precio_libro.setText( str(libro_a_editar.precio)) if libro_a_editar.digital: ui_ventana_editar_libro.checkbox_digital.setChecked(True) ui_ventana_editar_libro.combo_tapa.setCurrentText(libro_a_editar.tapa) if libro_a_editar.envio == "standar": ui_ventana_editar_libro.radio_standar.setChecked(True) if libro_a_editar.envio == "urgente": ui_ventana_editar_libro.radio_urgente.setChecked(True) if libro_a_editar.envio == "prioritario": ui_ventana_editar_libro.radio_prioritario.setChecked(True) #para cuando se quiera editar libro, cargo su imagen en #el label imagen pixmap = QPixmap("imagenes/" + str(libro_a_editar.id) + ".jpg") alto_label_imagen = ui_ventana_editar_libro.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_editar_libro.label_imagen.setPixmap(pixmap_redim) ui_ventana_editar_libro.boton_guardar_cambios_libro.clicked.connect( partial(guardar_cambios_libro, libro_a_editar.id)) ui_ventana_editar_libro.boton_seleccionar_archivo.clicked.connect( seleccionar_imagen_editar)
def cargar_ver_detalles(id): QMessageBox.about(MainWindow, "Info", "ver detalles del registro de id: " + str(id)) ui_ventana_ver_detalles_accesorio.setupUi(MainWindow) accesorio = operaciones_bd.obtener_accesorio_por_id(id) ui_ventana_ver_detalles_accesorio.entrada_mascota_accesorio.setText( accesorio.mascota) ui_ventana_ver_detalles_accesorio.entrada_accesorios.setText( str(accesorio.accesorio)) ui_ventana_ver_detalles_accesorio.entrada_talla_accesorio.setText( str(accesorio.talla)) ui_ventana_ver_detalles_accesorio.entrada_tipo_accesorio.setText( str(accesorio.tipo)) ui_ventana_ver_detalles_accesorio.entrada_precio_accesorio.setText( str(accesorio.precio)) if accesorio.ofertas: ui_ventana_ver_detalles_accesorio.checkbox_ofertas.setChecked(True) ui_ventana_ver_detalles_accesorio.combo_cliente.setCurrentText( accesorio.cliente) if accesorio.envio == "standar": ui_ventana_ver_detalles_accesorio.radio_standar.setChecked(True) if accesorio.envio == "urgente": ui_ventana_ver_detalles_accesorio.radio_urgente.setChecked(True) if accesorio.envio == "recogida": ui_ventana_ver_detalles_accesorio.radio_recogida.setChecked(True) pixmap = QPixmap("imagenes/" + str(accesorio.id) + ".jpg") alto_label_imagen = ui_ventana_ver_detalles_accesorio.label_imagen.height() pixmap_redim = pixmap.scaledToHeight(alto_label_imagen) ui_ventana_ver_detalles_accesorio.label_imagen.setPixmap(pixmap_redim)
def buscar_videojuego(self): id = self.le_id.text() id_ok = validacion_videojuego.validar_id(id) if not id_ok: self.lbl_ayuda.setText("Formato de id incorrecto") return else: self.lbl_ayuda.clear() #reiniciamos tabla de resultados y deshabilitamos los botones de editar/borrar self.limpiar_tabla_resultados() self.desactivar_botones() #creamos diccionario con el campo y el valor para posteriormente realizar las búsquedas valores = dict() valores["id"] = self.le_id.text() valores["titulo"] = self.le_titulo.text() valores["genero"] = self.le_genero.text() if self.gb_plataformas.isChecked(): valores["plataforma"] = "" else: valores["plataforma"] = self.cmb_plataforma.currentText() if self.gb_prestado.isChecked(): valores["prestado"] = "" else: if self.rb_prestado_no.isChecked(): valores["prestado"] = 0 else: valores["prestado"] = 1 valores["apuntes"] = self.le_apuntes.text() #solicitamos la búsqueda en bbdd videojuegos_encontrados = operaciones_bbdd.buscar_videojuegos_bd( valores) #se no se han encontrado resultados se informa mediante mensaje if len(videojuegos_encontrados) == 0: self.desactivar_botones() self.reducir_ventana() QtWidgets.QMessageBox.about( self.ui, "Información", "No se ha encontrado ningún videojuego.") else: #si hay resultados se recorren para ir rellenando la tabla a mostrar al usuario fila = 0 for videojuego in videojuegos_encontrados: columna = 0 self.tbl_juegos_encontrados.insertRow(fila) for campo in videojuego: #mostramos "Si" o "No" en vez de 0 y 1 para el campo "prestado" if columna == 5 and campo == 0: campo = "No" elif columna == 5 and campo == 1: campo = "Si" celda = QtWidgets.QTableWidgetItem(str(campo)) celda.setTextAlignment(QtCore.Qt.AlignCenter) self.tbl_juegos_encontrados.setItem(fila, columna, celda) columna += 1 #mostramos también la imagen del videjuego si existiera icono = QtWidgets.QLabel() ruta_imagen = "aplicaciones\\../imagenes/" + str( videojuego[0]) + ".jpg" objeto_path = pathlib.Path(ruta_imagen) existe = objeto_path.is_file() if existe: pixmap = QPixmap("aplicaciones\\../imagenes/" + str(videojuego[0]) + ".jpg") pixmap_redim = pixmap.scaledToHeight(100) icono.setPixmap(pixmap_redim) self.tbl_juegos_encontrados.setCellWidget( fila, columna, icono) else: sin_imagen = QtWidgets.QTableWidgetItem("Sin Imagen") sin_imagen.setTextAlignment(QtCore.Qt.AlignCenter) self.tbl_juegos_encontrados.setItem( fila, columna, sin_imagen) fila += 1 #redimensionamos la tabla de resultados para su visualización self.tbl_juegos_encontrados.resizeColumnsToContents() self.tbl_juegos_encontrados.verticalHeader().setDefaultSectionSize( 100) #ampliamos la ventana para que se muestren los resultados self.ampliar_ventana() #mostramos en etiqueta la cantidad de juegos encontrados self.lbl_juegos_encontrados.setText("Juegos encontrados: {}".format( self.tbl_juegos_encontrados.rowCount()))