Ruby, glade e combobox

Buongiorno, lista.

Tanto per cambiare, eccomi qua con un nuovo problema… almeno per me
:slight_smile:
Sto provando a fare un applicativo in ruby usando glade per disegnare
l’interfaccia grafica. Bene o male ho capito come far andare un bottone
e una casella di testo, ora però dovrei gestire una combobox che
dovrebbe contenere una lista di elementi presa da un database mysql.
Il problema è che non riesco a capire come far funzionare la combobox
con glade: se faccio l’identica cosa usando GTK (quindi niente
disegnatore di finestre, tutto a mano), funziona, mentre con glade
evidentemente sbaglio qualcosa: non riesco manco a farla vedere vuota
(praticamente qualsiasi cosa scriva il programma va in errore perché non
gli piace la combobox… da quello che ho capito la sintassi è quasi
identica, basta che si usi “GladeXML” al posto di “Gtk” quando si
definiscono gli oggetti presenti). Ho cercato esempi, ma non sono
riuscito a trovare niente di chiarificatore: molta documentazione per
GTK, ma con riferimento a glade ben poca cosa.
Qualcuno sa cosa dovrei scrivere perché il programma si avvii
mostrandomi la combobox (anche vuota) nella finestra? Per ora mi basta
questo, il resto verrà una volta che esiste una struttura decente :slight_smile:

Ah, sapete se c’è documentazione e/o esempi su ruby & glade? O dite che
sia meglio abbandonare, passare a gtk (o altro) e fare tutto a manina?

Grazie in anticipo e a presto :slight_smile:

Daneel O.

Daneel O. wrote:

Buongiorno, lista.

Tanto per cambiare, eccomi qua con un nuovo problema… almeno per me
:slight_smile:
Sto provando [… combobox, glade, aiuto! Soccorsi! …]

Bene, dopo 4 giorni (o quasi) di prove, errori, invocazioni, maledizioni
e quant’altro, sono riuscito a far funzionare quella simpaticissima
combobox, ecco qui il codice:

require ‘gtk2’
require “mysql”
dbname = “database”

Gtk.init
window = Gtk::Window.new( Gtk::Window::TOPLEVEL )

@combo = Gtk::ComboBox.new
m = Mysql.new(“localhost”, “utente”, “password”)
m.select_db(“database”)
risultato = m.query(“SELECT campo FROM tabella”)
risultato.each{|r| @combo.append_text(r[0])}

window.add( @combo )
@combo.show
window.show
Gtk.main

Sono sicuro che ci saranno schifezze, dato che ho provato l’impossibile,
ma da una prima pulita di funzionante è saltato fuori questo ':slight_smile:

Il passaggio successivo è far funzionare 'sta cosa sotto glade, perché
per arcani motivi glade è più bello, quindi fa le cose come vuole lui
(mai sopportati i primi della classe arroganti >:-( ). Ho trovato questa
discussione: http://www.ruby-forum.com/topic/143305#new , ma finora non
ne ho capito granché. Se qualcuno di buon cuore ha voglia di darmi
qualche suggerimento, io sono qua :slight_smile:

Grazie e a presto.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs