Diferencias entre las revisiones 21 y 22
Versión 21 con fecha 2020-03-04 15:42:15
Tamaño: 3466
Comentario:
Versión 22 con fecha 2020-03-04 15:44:59
Tamaño: 3535
Comentario:
Los textos eliminados se marcan así. Los textos añadidos se marcan así.
Línea 57: Línea 57:
{{attachment:opciones_kernel.png|attachment:opciones_kernel.png}}

GTK

Introducción

Es una biblioteca de componentes gráficos multiplataforma para desarrollar interfaces gráficas de usuario (GUI). Fue desarrollada inicialmente para implementar la interfaz gráfica del programa de edición de imágenes GIMP. En 1997 el proyecto GNOME escogió GTK+ como base sobre la cual desarrollar su entorno gráfico.​ Otras aplicaciones gráficas no directamente relacionadas con GNOME también han empleado GTK, convirtiéndose junto con Qt en la biblioteca GUI más popular del sistema operativo Linux.

GTK se basa en varias bibliotecas desarrolladas por el equipo de GTK y de GNOME:

  • GLib. Biblioteca de bajo nivel estructura básica de GTK y GNOME. Proporciona manejo de estructura de datos para C, portabilidad, interfaces para funcionalidades de tiempo de ejecución como ciclos, hilos, carga dinámica o un sistema de objetos.
  • GTK. Biblioteca la cual realmente contiene los objetos y funciones para crear la interfaz de usuario. Maneja widgets como ventanas, botones, menús, etiquetas, deslizadores, pestañas, etc.
  • GDK. Biblioteca que actúa como intermediario entre gráficos de bajo nivel y gráficos de alto nivel.
  • ATK. Biblioteca para crear interfaces con características de una gran accesibilidad muy importante para personas discapacitadas o minusválidos. Pueden usarse utilerías como lupas de aumento, lectores de pantalla, o entradas de datos alternativas al clásico teclado o ratón.
  • Pango. Biblioteca para el diseño y renderizado de texto, hace hincapié especialmente en la internacionalización. Es el núcleo para manejar las fuentes y el texto de la versión 2 de GTK.
  • Cairo. Biblioteca de renderizado avanzado de controles de aplicación.

GTK puede ser utilizado con diferentes lenguajes, existen binding para Python, JavaScript, C++, Perl, Rust.

Librerías requeridas

En una máquina con Debian (o Ubuntu) instalar:

# apt install python3 python3-gi

Ejemplo (Hola Mundo)

Crear el siguiente programa holamundo.py (Descargar):

   1 #!/usr/bin/env python
   2 # -*- coding: utf-8 -*-
   3 
   4 import gi
   5 gi.require_version("Gtk", "3.0")
   6 from gi.repository import Gtk
   7 
   8 def on_activate(app):
   9     win = Gtk.ApplicationWindow(application=app)
  10     btn = Gtk.Button(label="Hello, World!")
  11     btn.connect('clicked', lambda x: win.destroy())
  12     win.add(btn)
  13     win.show_all()
  14 
  15 def main(args):
  16     app = Gtk.Application(application_id='org.gtk.Example')
  17     app.connect('activate', on_activate)
  18     app.run(None)
  19     return 0
  20 
  21 if __name__ == '__main__':
  22     import sys
  23     sys.exit(main(sys.argv))

Y luego ejecutar en la terminal:

$ python3 holamundo.py

[ANEXAR]

Glade

Es una herramienta de desarrollo visual de interfaces gráficas mediante GTK/GNOME. Es independiente del lenguaje de programación y predeterminadamente no genera código fuente sino un archivo XML, el cual luego pueder ser cargado en tiempos de ejecución por un programa.

En una máquina con Debian (o Ubuntu) instalar:

# apt install glade

Referencias

https://www.gtk.org/

https://es.wikipedia.org/wiki/GTK

https://www.gtk.org/docs/getting-started/

https://www.gtk.org/docs/language-bindings/python/

https://python-gtk-3-tutorial.readthedocs.io/en/latest/

https://es.wikipedia.org/wiki/Glade

Talleres/GTK (última edición 2020-03-09 13:36:59 efectuada por AlejandroValdes)