<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hola comunidad!<br><br>Sé que no me conocen porque nunca había participado(al menos no que yo me acuerde), pero ya que estamos, quería ver si alguien de ustedes me podía responder la siguiente duda sobre Gtk(Pygi):<br>
<br>¿Cómo se puede hacer para empaquetar un GtkScale en un GtkMenuItem y que la escala funcione bien?(algo así como lo que usan los escritorios para el volumen)</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">
<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Tengo el siguiente código de ejemplo para mostrar lo que sucede:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">
<br></div><div class="gmail_default"><div class="gmail_default"><font face="arial, helvetica, sans-serif">#!/usr/bin/env python</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"># -*- coding: utf-8 -*-</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif">from gi.repository import Gtk</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif">class Ventana(Gtk.Window):</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> def __init__(self):</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> Gtk.Window.__init__(self)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"> self.set_size_request(200, 200)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> vbox = Gtk.VBox()</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_bar = Gtk.MenuBar()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"> menu_item_archivo = Gtk.MenuItem('Archivo')</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_bar.add(menu_item_archivo)</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_archivo = Gtk.Menu()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_item_archivo.set_submenu(menu_archivo)</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_archivo.append(Gtk.MenuItem('Abrir'))</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_archivo.append(Gtk.MenuItem('Guardar'))</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> item = Gtk.MenuItem()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> escala = self.crear_escala()</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> item.add(escala)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_archivo.append(item)</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> vbox.add(self.crear_escala())</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_archivo.append(Gtk.MenuItem('Cerrar'))</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> vbox.pack_start(menu_bar, False, False, 5)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> self.connect('destroy', Gtk.main_quit)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br></font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> self.add(vbox)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> self.show_all()</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> menu_bar.show_all()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"><br>
</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> def crear_escala(self):</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"> scale = Gtk.HScale()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> adjustment = Gtk.Adjustment(0, 0, 10, 1, 1, 0)</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"> scale.set_adjustment(adjustment)</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> return scale</font></div>
<div class="gmail_default"><font face="arial, helvetica, sans-serif"> </font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif">if __name__ == '__main__':</font></div><div class="gmail_default">
<font face="arial, helvetica, sans-serif"> Ventana()</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif"> Gtk.main()</font></div><div style="font-family:arial,helvetica,sans-serif"><br></div>
<div style="font-family:arial,helvetica,sans-serif">Gracias desde ya y</div><div style="font-family:arial,helvetica,sans-serif">Saludos a todos :D.</div></div></div>