Autore Topic: Posizionare testo in TextArea  (Letto 2582 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #15 il: 25 Gennaio 2021, 18:05:27 »
Ma mi succede soltanto con l'IDE di Gambas.
Iniziò quando fu fatta quella modifica dell'IDE in qt5, in gkt di due o tre mesi fa.
Mah !
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #16 il: 25 Gennaio 2021, 18:12:05 »
Ma mi succede soltanto con l'IDE di Gambas.
Iniziò quando fu fatta quella modifica dell'IDE in qt5, in gkt di due o tre mesi fa.
Mah !

Credo tu abbia ragione, io ce l'ho un po con l'ultimo kernel per via del nuovo pc desktop, comunque funziona bene il fatto è che mi scoccia avere degli warning scritti nel registro.
Lo so che mi basterebbe zittirli, ma non è una soluzione.  >:(
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vir1966

  • Gamberetto
  • *
  • Post: 39
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #17 il: 25 Gennaio 2021, 21:30:34 »
Tipo una cosa del genere?
Poniamo il caso che si abbia soltanto il dato all'inizio di ogni riga e che il "relativo valore" debba essere posizionato via codice solo successivamente...

Intendi dire qualcosa del genere (rimanendo nell'esempio precedente)?
Codice: [Seleziona]
Public Sub Form_Open()




  Dim aDescrizione As String[] = ["Chiave inglese", "Ferro da stiro a vapore", "Macchinetta da caffè per cialde", "Aermacchi bicilindrica 1953"]

  TextArea1.Font = Font["monospace,11"]
  TextArea1.Text = "DESCRIZIONE" & "\n\n"
  For i As Integer = 0 To aDescrizione.Max
    TextArea1.Text &= aDescrizione[i] & "\n"
  Next

End

Public Sub Button1_Click()

  Dim aStringhe As String[] = ["DESCRIZIONE", "PREZZO", "Chiave inglese", "11,20", "Ferro da stiro a vapore", "32,40", "Macchinetta da caffè per cialde", "112,00", "Aermacchi bicilindrica 1953", "7.500,00"]
  Dim aSplit As String[] = Split(TextArea1.Text, "\n", Null, True)
  Dim iLen1, iLen2, iStart As Integer
  Dim sStringa1, sStringa2, sPrezzo As String

  For i As Integer = 0 To aSplit.Max
    If i > 0 Then
      If Comp(aSplit[i - 1], aSplit[i]) = 1 Then
        sStringa1 = aSplit[i - 1]
      Else
        sStringa1 = aSplit[i]
      Endif
    Endif
  Next
  iLen1 = String.Len(sStringa1) + 4
  For i = 0 To aStringhe.Max
    If i > 1 Then
      If i Mod 2 <> 0 Then
        If Comp(aStringhe[i - 2], aStringhe[i]) = 1 Then
          sStringa2 = aStringhe[i - 2]
        Else
          sStringa2 = aStringhe[i]
        Endif
      Endif
    Endif
  Next
  iLen2 = String.Len(sStringa2)
  For i As Integer = 0 To aSplit.Max
    iStart = String.Instr(TextArea1.text, aSplit[i]) - 1
    sPrezzo = aStringhe[aStringhe.Find(aSplit[i]) + 1]
    TextArea1.Pos = iStart + String.Len(aSplit[i])
    TextArea1.Insert(Space(iLen1 - String.Len(aSplit[i])) & Space(iLen2 - String.Len(sPrezzo)) & sPrezzo)
  Next

End

Molto bella e ben fatta grazie Gianluigi, anche se molto lontana dal mio modo (mooooolto scadente ) di programmare...io sono ancora fermo al
Codice: [Seleziona]
TextArea1.text=TextArea1.text & Chr$(13) & "Aermacchi 350  "& "                "& prezzo
e via di seguito con il problema di posizionare via via il prezzo sempre sulla stessa colonna. Alla fine comunque la TextArea mi serve per poi selezionare e copiare il testo visualizzato per poi trattarlo su LibreO Writer

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.728
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #18 il: 25 Gennaio 2021, 21:39:12 »
Ma mi succede soltanto con l'IDE di Gambas.
Iniziò quando fu fatta quella modifica dell'IDE in qt5, in gkt di due o tre mesi fa.
Mah !
...è, si da lì sono iniziati i casini, di ogni genere.
Ho sempre degli starni malfunzionamenti.
Il mouse che seleziona due righe sotto la sua reale posizione.
Non si sposta il prompt nella posizione selezionata dal mouse.
In un nuovo progetto quando clicco su sul Fmain.form non si apre ecc.
 :-\
Spero sia il prezzo da pagare  solo transitoriamente!
 :ciao:
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #19 il: 25 Gennaio 2021, 21:59:57 »

Molto bella e ben fatta grazie Gianluigi, anche se molto lontana dal mio modo (mooooolto scadente ) di programmare...io sono ancora fermo al
Codice: [Seleziona]
TextArea1.text=TextArea1.text & Chr$(13) & "Aermacchi 350  "& "                "& prezzo
e via di seguito con il problema di posizionare via via il prezzo sempre sulla stessa colonna. Alla fine comunque la TextArea mi serve per poi selezionare e copiare il testo visualizzato per poi trattarlo su LibreO Writer

Prego, piano piano si può anche migliorare il nostro codice.  :)
Se capisco bene passi a Libre Write per poter stampare, se lo fai solo per quello e magari aggiungere qualcosa di scritto, te lo sconsiglio.

Domani posto un piccolo esempio e poi mi dici se ti piace e se può avvicinarsi ai tuoi interessi.

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #20 il: 26 Gennaio 2021, 01:28:59 »
Spero sia il prezzo da pagare  solo transitoriamente!

Con gb.map invece tutto va liscio ! 

« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.728
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #21 il: 26 Gennaio 2021, 08:52:03 »
Spero sia il prezzo da pagare  solo transitoriamente!

Con gb.map invece tutto va liscio ! 

... come l'olio!
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline vir1966

  • Gamberetto
  • *
  • Post: 39
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #22 il: 26 Gennaio 2021, 21:43:35 »

Molto bella e ben fatta grazie Gianluigi, anche se molto lontana dal mio modo (mooooolto scadente ) di programmare...io sono ancora fermo al
Codice: [Seleziona]
TextArea1.text=TextArea1.text & Chr$(13) & "Aermacchi 350  "& "                "& prezzo
e via di seguito con il problema di posizionare via via il prezzo sempre sulla stessa colonna. Alla fine comunque la TextArea mi serve per poi selezionare e copiare il testo visualizzato per poi trattarlo su LibreO Writer

Prego, piano piano si può anche migliorare il nostro codice.  :)
Se capisco bene passi a Libre Write per poter stampare, se lo fai solo per quello e magari aggiungere qualcosa di scritto, te lo sconsiglio.

Domani posto un piccolo esempio e poi mi dici se ti piace e se può avvicinarsi ai tuoi interessi.

 :ciao:

Per essere più precisi il programmino in questione e visto il mio lavoro che ha a che fare con le finestre ma non quelle targate Microsoft ma quelle in legno e pvc, mi serve per calcolarne la trasmittanza termica per poi appunto trasferire i risultati in un documento che andrà poi consegnato al cliente...di seguito l'output visualizzato sulla textarea, comunque grazie per qualsiasi info.
  26/01/2021                     Cliente____________
-
 01 Finestra mm. 1000 x 1000   1 anta/e
-
  Spessore infisso             mm.                                             75
  Altezza nodo inferiore  mm.                                               118
  Altezza nodo Laterale e superiore mm.                               118
  Altezza nodo centrale   mm.                                                0
  Altezza nodo traverso   mm.                                                0
  Tipo legno                                                                       Abete
  PRESTAZIONI:
  Vetrocamera          3+3.1Be/14GasWe/4ExCh/14GasWe/3+3.1Be
  Trasmittanza totale infisso                                 Uw  1.18  W/m2K
  Trasmittanza vetro                                              Ug  0.6  W/m2K
---------------------------------------------------------------------------------------------------------------
 01 PortaFinestra mm. 1000 x 2000   2 anta/e
-
  Spessore infisso             mm.                                             75
  Altezza nodo inferiore  mm.                                              166
  Altezza nodo Laterale e superiore mm.                              118
  Altezza nodo centrale   mm.                                             138
  Altezza nodo traverso   mm.                                               92
  Tipo legno                                                                     Abete
  PRESTAZIONI:
  Vetrocamera          3+3.1Be/14GasWe/4ExCh/14GasWe/3+3.1Be
  Trasmittanza totale infisso                                  Uw  1.32  W/m2K
  Trasmittanza vetro                                              Ug  0.6  W/m2K
---------------------------------------------------------------------------------------------------------------

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #23 il: 27 Gennaio 2021, 00:28:00 »

Per essere più precisi il programmino in questione e visto il mio lavoro che ha a che fare con le finestre ma non quelle targate Microsoft ma quelle in legno e pvc, mi serve per calcolarne la trasmittanza termica per poi appunto trasferire i risultati in un documento che andrà poi consegnato al cliente...di seguito l'output visualizzato sulla textarea, comunque grazie per qualsiasi info.
...

Ah pensavo ad un'altra cosa come vedrai dall'allegato progetto.
Comunque anche se creato per un altro scopo, il progetto allegato può darti uno spunto per crearti direttamente il report e stamparlo o inviarlo in allegato a una mail con il formato pdf.

Funzionamento:

Doppio click sul cliente per inviarne i dati alle proprietà.
Doppio click sui prodotti, dopo averne scelto la quantità, per popolare la TableView (potevo usare anche una gridview ma nella tableview volendo puoi anche scriverci).
Scrivi tutto quello che vuoi e poi crei il report agendo sul pulsante stampa.
Naturalmente è un abbozzo, anche se sufficientemente particolareggiato, che va raffinato

 :ciao:

P.S. Domani se riesco ti creo un report con i dati che hai postato...
« Ultima modifica: 27 Gennaio 2021, 00:29:52 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vir1966

  • Gamberetto
  • *
  • Post: 39
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #24 il: 27 Gennaio 2021, 21:54:36 »
Gianluigi Intanto grazie...me lo scarico e me lo studio, vediamo se riesco a capirci qualcosa  :hatecomputer:

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #25 il: 28 Gennaio 2021, 23:12:38 »
Come promesso, anche se in ritardo, allego un programma per la stampa delle schede tecniche.
È un filino complicato ed è creato con l'ultima master.
Dimmi se per caso non riesci a farlo funzionare con il tuo Gambas e chiedi pure lumi riguardo al codice.
Purtroppo non conosco la materia mi sono dovuto basare esclusivamente su quanto hai postato.
Se il tuo programma crea automaticamente i dati devi fare in modo di inviarli alla classe e da li al report.

Ciao

P.S. Report.Path è stata introdotta da poco se hai la stabile oppure una master un po datata devi commentare il codice:
Codice: [Seleziona]
hReport.Path = "/tmp/" & aPanel[0].Cliente & ".pdf"
altrimenti otterrai un errore.

Programma rimosso vedi il post successivo (appena sotto)
« Ultima modifica: 29 Gennaio 2021, 11:24:41 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #26 il: 29 Gennaio 2021, 11:23:38 »
C'era un errore su "Tipo legno" scritto in due modi.
C'era un malfunzionamento nell'aggiornamento dei dati immessi ora dando Invio da tastiera si salvano.
Ho aggiunto la possibilità di rimuovere gli ultimi dati aggiunti alla scheda tecnica.
Ho commentato Report.Path se lo si desidera avere basta de-commentarlo.

Ciao
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vir1966

  • Gamberetto
  • *
  • Post: 39
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #27 il: 29 Gennaio 2021, 21:58:32 »
Ciao Gianluigi...intanto grazie per i tuoi esempi che sono molto utili per imparare cose nuove...allego invece il mio programmino cosi come lo ho concepito io, trasportando i parametri di calcolo da un foglio Excel per il calcolo della trasmittanza, il funzionamento è molto semplice, inserisco le misure faccio delle scelte se non sono quelle di default già preimpostate all'avvio e premo elabora, se tutto ok premo memorizza per tenere in memoria la misurazione e posso fare altre elaborazioni per altre misure di finestre, quando finito di calcolare premo visualizza per avere il report....sul quale appunto avevo delle difficoltà a posizionare i dati

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #28 il: 30 Gennaio 2021, 18:45:47 »
Non ho capito se l'esempio di report che ti ho postato, ti possa andar bene.
Io i calcoli non li ho capiti mi ci sono perso, se ti serve una mano a rifare il tuo programma, sono a disposizione ma occorrerà che tu mi faccia capire quali calcoli servono e dove.

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vir1966

  • Gamberetto
  • *
  • Post: 39
    • Mostra profilo
Re:Posizionare testo in TextArea
« Risposta #29 il: 30 Gennaio 2021, 19:11:03 »
Non ho capito se l'esempio di report che ti ho postato, ti possa andar bene.
Io i calcoli non li ho capiti mi ci sono perso, se ti serve una mano a rifare il tuo programma, sono a disposizione ma occorrerà che tu mi faccia capire quali calcoli servono e dove.

 :ciao:
Ciao Gianluigi....tranquillo non ti chiedo di rifarmi il programmino, l'ho inserito solo per coerenza visto che ti eri profuso ad aiutarmi, detto questo... si il report mi va benissimo, semmai non mi serve che i campi siano editabili essendo il risultato di un calcolo perché andando a modificare ad esempio un nodo cambierebbe anche la trasmittanza totale che è il fine ultimo per accedere alle detrazioni di legge. Comunque con calma proverò a inserire il report nel mio programma e indirizzare correttamente le variabili nello stesso