es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

quiero una equivalencia de vb.net datagridview en python

Estoy aprendiendo Python y utilizando la versión 3.9 con tkinter. Puedo conectarme a una base de datos de SQL Server y realizar todas las operaciones CRUD. Sin embargo, me gustaría poder mostrar el contenido de una tabla en formato tabular, como se hace con un DataGridView en VB y C#. Estoy un poco confundido. No pude encontrar un ejemplo en internet. Agradeceré cualquier ayuda en este asunto. Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Solución para mostrar una tabla de SQL Server en forma tabular utilizando Python Tkinter

    Para mostrar el contenido de una tabla de SQL Server en forma tabular utilizando Python Tkinter, puedes seguir los siguientes pasos:

    1. Importa los módulos necesarios: pymssql, Tkinter y ttk.
    2. Establece una conexión a la base de datos de SQL Server utilizando el módulo pymssql.

    3. Ejecuta una consulta SQL para obtener los datos de la tabla.

    4. Crea un objeto tree utilizando el método ttk.Treeview y configúralo para mostrar los datos en columnas.

    5. Inserta los datos obtenidos de la consulta SQL en el objeto tree y ajusta el ancho de cada columna para una mejor visualización.

    El siguiente fragmento de código muestra un ejemplo de implementación de los pasos anteriores:

    import pymssql
    import tkinter as tk
    from tkinter import ttk
    
    # Establece una conexión a la base de datos de SQL Server
    conn = pymssql.connect(server='nombre_servidor', user='nombre_usuario', password='contraseña', database='nombre_base_de_datos')
    
    # Ejecuta una consulta SQL para obtener los datos de la tabla
    cursor = conn.cursor()
    cursor.execute('SELECT * FROM nombre_tabla')
    data = cursor.fetchall()
    
    # Crea un objeto tree y configúralo para mostrar los datos en columnas
    root = tk.Tk()
    tree = ttk.Treeview(root, columns=(0, 1, 2), show='headings')
    tree.heading(0, text='Columna 1')
    tree.heading(1, text='Columna 2')
    tree.heading(2, text='Columna 3')
    
    # Inserta los datos obtenidos de la consulta SQL en el objeto tree
    for row in data:
        tree.insert('', 'end', values=row)
    
    # Ajusta el ancho de cada columna para una mejor visualización
    tree.column(0, width=100)
    tree.column(1, width=100)
    tree.column(2, width=150)
    
    # Muestra el objeto tree en la pantalla
    tree.pack()
    root.mainloop()
    

    Reemplaza 'nombre_servidor', 'nombre_usuario', 'contraseña' y 'nombre_base_de_datos' con los nombres apropiados para el SQL Server al que deseas conectarte.

    Esta implementación debería proporcionarte una tabla de SQL Server en forma tabular utilizando Tkinter en tu programa de Python.

Comments are closed.