Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione
realme C100x scommette tutto, forse troppo, sulla batteria da 7500 mAh e sulla certificazione ArmorShell per farsi notare nella fascia più economica del mercato: lo abbiamo messo alla prova per capire a chi è rivolto questo smartphone che sacrifica un po' prestazioni, display e fotocamera per offrire l'autonomia migliore possibile a un prezzo decisamente contenuto
Star Wars Zero Company è l'erede di XCOM 2
Star Wars Zero Company è l'erede di XCOM 2
Bit Reactor porta nell’universo di Star Wars una struttura tattica che richiama apertamente XCOM 2, ma la arricchisce con legami tra i personaggi, progressione ruolistica, gestione della base e un sistema di combattimento costruito attorno a tre Punti Azione e alle risorse condivise della squadra
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 26-10-2012, 18:39   #1
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Sviluppo software con interfaccia grafica......

Ciao a tutti, chiedo qui piuttosto che nella sezione "Programmazione" perchè la mia è una domanda specifica per lo sviluppo in ambiente linux.
Premetto che programmo in C e vorrei cimentarmi nello sviluppo di un programma non molto complicato ma con interfaccia grafica, però non ho mai sviluppato nulla sotto linux (in ambiente grafico).
Ho fatto alcune ricerche, ed ho visto che le possibilità sono molte.
QT, forse la più interessante mi obbligherebbe a studiare C++ e onestamente non ne ho nessuna voglia.
GTK forse più semplici ma non ho trovato documentazione in italiano pero ho visto che usando GLADE posso semplificarmi la vita.
Sono un po' indeciso, certo è che devo fare un piccolo programma e vorrei finirlo prima del 2020, cosa che non riuscirei mai a fare se dovessi mettermi a studiare linguaggi nuovi e librerie complesse delle quali si trova documentazione solo in inglese
Che ne pensate di GLADE?
A me sembra interessante ma la documentazione che ho trovato è tutta molto datata (2007) e quindi non so se è un progetto ancora attivo o se mi metto da subito a lavorare su una cosa vecchia che magari è destinata a sparire.
Qualche consiglio?
Grazie.
Ciao.
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2012, 21:37   #2
gasparov
Member
 
Iscritto dal: Jun 2006
Città: Trento
Messaggi: 113
Io gioco (non programmo, gioco ) con python e gtk, riguardo a C non so dirti nulla.
Glade è attiva e come hai detto tu ti semplifica molto la vita nel fare le intefaccie grafiche, disegni l'interfaccia, colleghi i segnali ed è fatta.

Ci sono stati dei cambiamenti di recente col passaggio a gtk3 ( nel "mio" caso è morto pygtk ed è stato integrato tutto in gobject)

Se hai volgia dai pure un occhiata ad Anjuta, è un IDE con glade integrata ed una serie di "comode cose".

La prima cosa che fai è mettere un Toplevel (Window) poi un vertical box ( in gtk funziona tutto a box, in qt se non sbaglio posizioni i widget dove vuoi) e nel box metti i widget che vuoi (bottoni, text entry ecc ecc). Li trovi nel pannello di sinistra
Quando clicchi su un widget in basso a destra ti vengono fuori 4 tab.General, Packing, Common e Signals
In Signals trovi tutti i segnali che può emettere un widget (tipo clik bottone) a cui te assegni un handler che poi scriverai nel codice.
Premetto che non conosco altro ma una rottura delle gtk è che funziona tutto come un loop e se nel loop c'è qualcosa che non risponde si freeza tutto finchè non finisce. Cioè se ad esempio lanci "get_data()" e get_data ci mette 3 secondi a finire la gui si freeza per tre secondi.Di recente ho fatto un programmino che raccoglie e visualizza dati una volta al secondo ed ho dovuto inserire dei thread per evitare che mi si inchiodasse la gui ad ogni chiamata.

Se hai già il codice dovresti cavartela veloce ad adattarlo.
__________________
Desktop: Pentium E8500, Asus P5K Pro (P35), 4GB DDR2, Na valanga di hard disk, Zotac Nvidia GtX 260, Cooler Master HAF 932, Meo (PT) 100/100 Mbps OS: Arch
Serverino: Raspberry Model B, 256MB OS: Gentoo
Remoto: Atom D425, 2GB Ram, Seagate Barracuda ST31000524AS, 10/10 Gbps (shared) OS: Debian
gasparov è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2012, 23:06   #3
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Ti ringrazio della risposta incoraggiante e non
Anjuta l'ho già installato ma non trovo tracce di GLADE, forse mi manca qualche pacchetto per collegare il tutto.
Il software che mi serve l'ho già scritto in C ma è la versione base che gira su terminale, ora dovrei farci un'interfaccia grafica semplice per visualizzare i dati e implementare qualche finestra per le opzioni.
Quello che non mi piace molto è il fatto che essendo in loop potrebbe impallarsi, perchè il programma che ho sviluppato è abbastanza vitale che non si fermi per lungo tempo.
Qualche frazione di secondo può andare, ma 3-4 secondi potrebbero essere catastrofici
Credo che comunque per visualizzare un flusso video su una parte della finestra (non ho la più pallida idea di come fare ) e scrivere un po' di testo non ci siano questi grossi problemi, comunque sarà tutto da sperimentare.
Ora devo trovare il sistema di far vedere GLADE ad Anjuta.
Ho provato a seguire questo blog ma come sempre succede con linux, le cose non funzionano mai come scritto nelle guide
Tra i pacchetti elencati in quel blog, alcuni non li ho trovati, devo vedere quali sono i sostituti e forse quella è la chiave per risolvere il problema.
Comunque tra le varie soluzioni che ho valutato glade mi sembra la soluzione più abbordabile senza spaccarsi per forza la testa anche se mi ha dato l'impressione che non sia molto usato
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2012, 23:27   #4
eaman
Senior Member
 
L'Avatar di eaman
 
Iscritto dal: Feb 2002
Messaggi: 2511
Non so' cosa tu conti di usare, ma per le QT con http://kdevelop.org/ si usa sia C che C++

Intendi dire che vuoi caricare del codice C senza modifiche?
- http://qt-project.org/forums/viewthread/8057
eaman è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2012, 23:39   #5
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Quote:
Originariamente inviato da eaman Guarda i messaggi
Non so' cosa tu conti di usare, ma per le QT con http://kdevelop.org/ si usa sia C che C++
Grazie, provo a vedere, ma mi da l'impressione che le QT siano più per professionisti, non so se riuscirò a combinare qualcosa.
Anche perchè di documentazione in italiano non ne ho trovata ed io con l'inglese qualcosa riesco anche a tirare fuori ma mi rallenterebbe in maniera esagerata
Per glade e gtk invece ho trovato anche molta documentazione in italiano.

Quote:
Intendi dire che vuoi caricare del codice C senza modifiche?
- http://qt-project.org/forums/viewthread/8057
No no, intanto ho scritto il codice che mi serviva per vedere se la mia idea poteva funzionare, ora che ho visto che funziona, porterò il codice su interfaccia grafica ma con le opportune modifiche, anche se non ce ne saranno più di tante perchè il motore dell'applicazione legge dei dati da una porta usb e da una seriale e per questa parte non credo necessiteranno modifiche, per la rappresentazione dei dati ora ci sono dei banali printf che però ovviamente bisognerà adattare alle esigenze della libreria grafica.
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 12:51   #6
gasparov
Member
 
Iscritto dal: Jun 2006
Città: Trento
Messaggi: 113
Ci sono progetti abbastanza famosi che usano glade tipo deluge torrent.

Dicono che qt siano meglio di gtk sotto certi punti di vista, da quanto ne so io dovrebbe essere un pelino più facile a pari conoscenze fare un interfaccia in qt dato che ci sono le librerie per qualsiasi cosa.

Non ho mai fatto nulla che riguardasse un video ma per quanto riguarda le gtk potresti dare un occhiata a gstreamer e libvlc

Che sistema operativo usi?
__________________
Desktop: Pentium E8500, Asus P5K Pro (P35), 4GB DDR2, Na valanga di hard disk, Zotac Nvidia GtX 260, Cooler Master HAF 932, Meo (PT) 100/100 Mbps OS: Arch
Serverino: Raspberry Model B, 256MB OS: Gentoo
Remoto: Atom D425, 2GB Ram, Seagate Barracuda ST31000524AS, 10/10 Gbps (shared) OS: Debian
gasparov è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 16:07   #7
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
In C puoi usare IUP, Clutter e wxWidgets. Quest'ultima è usatissima in svariati ambiti ed è molto completa.
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 20:30   #8
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Quote:
Originariamente inviato da gasparov Guarda i messaggi
Ci sono progetti abbastanza famosi che usano glade tipo deluge torrent.

Dicono che qt siano meglio di gtk sotto certi punti di vista, da quanto ne so io dovrebbe essere un pelino più facile a pari conoscenze fare un interfaccia in qt dato che ci sono le librerie per qualsiasi cosa.

Non ho mai fatto nulla che riguardasse un video ma per quanto riguarda le gtk potresti dare un occhiata a gstreamer e libvlc

Che sistema operativo usi?
Si, effettivamente per quello che devo fare, GLADE continua ad essere la scelta più sensata.
Proverò a vedere gstreamer e libvlc se possono fare al caso mio.

Una cosa però, studiando un po' glade e gtk, ho visto che ad un certo punto viene invocato un gtk_main() che credo sia un loop dove vengono gestiti tutti i messaggi inerenti alla gestione delle finestre/pulsanti ecc. ecc.
Qui mi nasce un altro problema, o meglio, forse due ai quali non avevo pensato prima
1. Ho già scritto del codice di base (senza grafica) e questo gira già con un suo loop perchè deve leggere ed elaborare dei dati in continuazione.
Il mio problema è, come faccio ad inserirlo all'interno del loop gtk_main()?

2. Il codice che ho scritto finora, usa le SDL, posso mescolare GTK ed SDL o mi ritrovo con una frittata?

Grazie.

Ultima modifica di stefanoxjx : 27-10-2012 alle 20:32.
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 20:32   #9
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Quote:
Originariamente inviato da pabloski Guarda i messaggi
In C puoi usare IUP, Clutter e wxWidgets. Quest'ultima è usatissima in svariati ambiti ed è molto completa.
Ho guardato un po' wxWidgets, però nel sito ufficiale c'è scritto:
Quote:
wxWidgets is a C++ library that lets developers create applications for Windows, OS X, Linux and UNIX on 32-bit and 64-bit architectures as well as several mobile platforms including Windows Mobile, iPhone SDK and embedded GTK+. It has popular language bindings for Python, Perl, Ruby and many other languages.
Il che mi fa pensare che il problema che avrei è lo stesso per le QT.
Dovrei studiarmi il C++
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 20:50   #10
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Quote:
Originariamente inviato da stefanoxjx Guarda i messaggi
Il che mi fa pensare che il problema che avrei è lo stesso per le QT.
Dovrei studiarmi il C++
No, wxwidgets è ovviamente scritto in C++, ma ha una miriade di bindings per i più disparati linguaggi, tra cui il C http://sourceforge.net/projects/wxc/

Il fatto di essere realizzata in C++ non implica che chi la usa deve per forza programmare in C++. Se fosse così la metà dei software moderni non esisterebbe
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 21:20   #11
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Quote:
Originariamente inviato da pabloski Guarda i messaggi
No, wxwidgets è ovviamente scritto in C++, ma ha una miriade di bindings per i più disparati linguaggi, tra cui il C http://sourceforge.net/projects/wxc/

Il fatto di essere realizzata in C++ non implica che chi la usa deve per forza programmare in C++. Se fosse così la metà dei software moderni non esisterebbe
Oh! si! questa è una cosa che mi piace
Ho appena provato un piccolo progetto con codeblocks e wxwidget ma mi da errori in compilazione pur avendo installato i vari pacchetti wx e libwx.
Domani ci riprovo, questa sera sono troppo cotto per mettermi a ragionare troppo
Esiste qualche tutorial in italiano?
Grazie.
Ciao.
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 21:26   #12
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Quote:
Originariamente inviato da stefanoxjx Guarda i messaggi
Esiste qualche tutorial in italiano?
Domanda imbarazzante

Ma probabilmente la risposta è no
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2012, 21:50   #13
stefanoxjx
Senior Member
 
L'Avatar di stefanoxjx
 
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
Quote:
Originariamente inviato da pabloski Guarda i messaggi
Domanda imbarazzante

Ma probabilmente la risposta è no


OK, allora mi arrangio con l'inglese.
Lo ammetto, la mia comunque è solo pigrizia
stefanoxjx è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
NetApp Novus, 100 TB al secondo per sfru...
Spotify giù da ore: se non trovi una can...
Sky con Netflix incluso da 16,99€/mese: ...
Anthropic verso la Borsa: 42 miliardi di...
Data repatriation: cos'è e come S...
ProsperoEden: l'emulatore funzionante ch...
La sonda spaziale ESA JUICE ha effettuat...
iPhone, crash a valanga su migliaia di a...
Se mangi queste patatine puoi vincere un...
Opera browser ha una eSIM integrata da 3...
WINDTRE BUSINESS e la Protezione Civile ...
Intel prepara i chip che si illuminano? ...
HUAWEI WATCH D3 arriva in Italia: l'orol...
PS5 Pro, in Giappone si compra per estra...
Recensione Nothing Headphone (1) Pro, de...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v