Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Renault Twingo E-Tech Electric: che prezzo!
Renault Twingo E-Tech Electric: che prezzo!
Renault annuncia la nuova vettura compatta del segmento A, che strizza l'occhio alla tradizione del modello abbinandovi una motorizzazione completamente elettrica e caratteristiche ideali per i tragitti urbani. Renault Twingo E-Tech Electric punta su abitabilità, per una lunghezza di meno di 3,8 metri, abbinata a un prezzo di lancio senza incentivi di 20.000€
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media
Nel Formula 1 Technology and Media Centre di Biggin Hill, la velocità delle monoposto si trasforma in dati, immagini e decisioni in tempo reale grazie all’infrastruttura Lenovo che gestisce centinaia di terabyte ogni weekend di gara e collega 820 milioni di spettatori nel mondo
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica
Il nuovo gimbal mobile DJI evolve il concetto di tracciamento automatico con tre modalità diverse, un modulo multifunzionale con illuminazione integrata e controlli gestuali avanzati. Nel gimbal è anche presente un'asta telescopica da 215 mm con treppiede integrato, per un prodotto completo per content creator di ogni livello
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-01-2010, 09:35   #1
Teo@Unix
Senior Member
 
L'Avatar di Teo@Unix
 
Iscritto dal: Mar 2009
Messaggi: 753
[C++] Qt - gestione stdin/stdout

Buon dì a tutti,
sto cercando un sistema per associare l'input e l'output standard ad un controllo del tipo dialog. Nel senso, vorrei che questa dialog si comporti come un terminale.

Scopo è realizzare un client che abbia una unica dialog per inviare dei dati ad un server e riceverli.

Utilizzando direttamente la shell non avevo problemi perchè mi bastava utilizzare i comandi di input e output standard, mentre ora con la gui mi trovo un attmo in difficoltà... spero di essere stato chiaro. Vi ringrazio.
Teo@Unix è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2010, 13:21   #2
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21840
Quote:
Originariamente inviato da Teo@Unix Guarda i messaggi
Buon dì a tutti,
sto cercando un sistema per associare l'input e l'output standard ad un controllo del tipo dialog. Nel senso, vorrei che questa dialog si comporti come un terminale.

Scopo è realizzare un client che abbia una unica dialog per inviare dei dati ad un server e riceverli.

Utilizzando direttamente la shell non avevo problemi perchè mi bastava utilizzare i comandi di input e output standard, mentre ora con la gui mi trovo un attmo in difficoltà... spero di essere stato chiaro. Vi ringrazio.
devi usare i segnali e gli slot per interagire non puoi usare direttamente gli stdin e stdout

praticamente ogni oggetto qt ha un insieme di "porte" atte a ricevere messaggi dall'esterno chiamate slot
ogni oggetto ha anche la possibilità di emettere dei segnali volti a interagire con gli altri oggetti.

quindi
devi definire gli slot e i segnali che ti servono
devi connettere i segnali con gli slot
devi interagire con gli oggetti passando attraverso i segnali
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2010, 13:49   #3
Teo@Unix
Senior Member
 
L'Avatar di Teo@Unix
 
Iscritto dal: Mar 2009
Messaggi: 753
Quote:
Originariamente inviato da !fazz Guarda i messaggi
devi usare i segnali e gli slot per interagire non puoi usare direttamente gli stdin e stdout

praticamente ogni oggetto qt ha un insieme di "porte" atte a ricevere messaggi dall'esterno chiamate slot
ogni oggetto ha anche la possibilità di emettere dei segnali volti a interagire con gli altri oggetti.
questo ok.

Per gestire I/O multiplexing utilizzavo select() in Linux, non ho ancora guardato ma dovrei poterlo usare ancora, forse c'è anche una classe che lo fa...

siccome su questo "terminale" dovranno essere dati una serie di comandi...
come posso fare secondo te a fare in modo che alla pressione del tasto invio sia solo l'ultima riga ad essere inviata all'host remoto?
Perchè utilizzando in modo standard il controllo PlainText ad esempio, mi invierebbe tutto (anche i dati precedenti)...
è bene usare un buffer con un file descriptor? Però non saprei come... nel senso, l'utente dovrebbe anche poter vedere quello che scrive....
non mi sembra di aver visto esempi di questo tipo purtroppo... un esempio mi basterebbe per capire...
Grazie.
Teo@Unix è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2010, 14:16   #4
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21840
Quote:
Originariamente inviato da Teo@Unix Guarda i messaggi
questo ok.

Per gestire I/O multiplexing utilizzavo select() in Linux, non ho ancora guardato ma dovrei poterlo usare ancora, forse c'è anche una classe che lo fa...

siccome su questo "terminale" dovranno essere dati una serie di comandi...
come posso fare secondo te a fare in modo che alla pressione del tasto invio sia solo l'ultima riga ad essere inviata all'host remoto?
Perchè utilizzando in modo standard il controllo PlainText ad esempio, mi invierebbe tutto (anche i dati precedenti)...
è bene usare un buffer con un file descriptor? Però non saprei come... nel senso, l'utente dovrebbe anche poter vedere quello che scrive....
non mi sembra di aver visto esempi di questo tipo purtroppo... un esempio mi basterebbe per capire...
Grazie.
scusa

puoi scriverti i tuoi segnali e i tuoi slot quindi puoi decidere cosa inviare direttamente scrivendo la funzione
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2010, 15:14   #5
Teo@Unix
Senior Member
 
L'Avatar di Teo@Unix
 
Iscritto dal: Mar 2009
Messaggi: 753
Quote:
Originariamente inviato da !fazz Guarda i messaggi
scusa
ma va perchè?

quello che mi verrebbe spontaneo fare è avere i due fd, uno associato al socket l'altro a questo punto associato ad un buffer....

il punto è... come posso far visualizzare allo stesso tempo ciò che viene scritto sulla dialog e inserirlo nel buffer..... è probabile anche che sia una cosa banale... ma non mi viene in mente come fare.... accipicchia
Teo@Unix è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2010, 15:19   #6
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21840
Quote:
Originariamente inviato da Teo@Unix Guarda i messaggi
ma va perchè?

quello che mi verrebbe spontaneo fare è avere i due fd, uno associato al socket l'altro a questo punto associato ad un buffer....

il punto è... come posso far visualizzare allo stesso tempo ciò che viene scritto sulla dialog e inserirlo nel buffer..... è probabile anche che sia una cosa banale... ma non mi viene in mente come fare.... accipicchia
io userei 2 widget separati uno sopra l'altro con una qlineedit per gestire l'ultima riga

oppure guarda un qtextedit

più specifico non so, non ho ben capito cosa devi fare
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Renault Twingo E-Tech Electric: che prezzo! Renault Twingo E-Tech Electric: che prezzo!
Il cuore digitale di F1 a Biggin Hill: l'infrastruttura Lenovo dietro la produzione media Il cuore digitale di F1 a Biggin Hill: l'infrast...
DJI Osmo Mobile 8: lo stabilizzatore per smartphone con tracking multiplo e asta telescopica DJI Osmo Mobile 8: lo stabilizzatore per smartph...
Recensione Pura 80 Pro: HUAWEI torna a stupire con foto spettacolari e ricarica superveloce Recensione Pura 80 Pro: HUAWEI torna a stupire c...
Opera Neon: il browser AI agentico di nuova generazione Opera Neon: il browser AI agentico di nuova gene...
OnePlus 15, in Europa sarà uguale...
Portal X, un nuovo modo per controllare ...
Con Satispay ora si può pagare in...
Sora sbarca anche su Android: una nuova ...
Vibes sbarca in Europa: Meta sfida TikTo...
Tesla, approvato il pacchetto da 1.000 m...
Rockstar posticipa GTA 6 a novembre 2026...
Snap e Perplexity unite: dal prossimo an...
La Cina dice addio a NVIDIA? Il governo ...
Microlino, simbolo italiano della mobili...
Apple disattiverà la sincronizzaz...
Google lancia l'allarme: attenzione ai m...
Primo test drive con Leapmotor B10: le c...
'Non può essere un robot': l'uman...
Monopattino elettrico Segway Ninebot Max...
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: 07:02.


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