ArcadiA Club
ArcadiA Club


AAC FORUM     AAC News     AAC Box    



Home Page   Home Page
programmazione.htm   Programmazione - FORUM sezione  Vai al FORUM
 
Username:
Password:
Iscriviti!  |  Recupero password



Iscriviti GRATIS, potrai navigare senza questa
fascia e accedere a contenuti esclusivi:

    E-Mail:

Password:



 

 
- Ottenere una linea di una casella di testo -
 
COSA SERVE PER QUESTO TUTORIAL
Download | Chiedi sul FORUM | Glossario Microsoft Visual Basic 6 - Conoscenze basiche di VB
SendMessage con parametri: EM_GETLINE

OTTENERE IL TESTO DI UNA RIGA DI UNA CASELLA DI TESTO TRAMITE LE API
La funzione SendMessage di user32.dll e il messaggio EM_GETLINE

Come accennato nel precedente articolo (sul cui codice questo tutorial si basa) alcuni messaggi richiedono che ulteriori parametri a SendMessage, uno di questi è EM_GETLINE, messaggio di richiesta del testo di una riga specificata di una casella di testo.
Per prima cosa rispetto al vecchio progetto nel modulo va sostituita la riga che dichiarava la costante con quella che segue (sempre ottenuta tramite l'API Viewer di Visual Studio).
Public Const EM_GETLINECOUNT = &HBA

deve diventare:

Public Const EM_GETLINE = &HC4

Mentre nel form, la routine Agisci_Click deve diventare:


Private Sub Agisci_Click()
    Dim strRiga As String
    Dim lngLunghezzaRiga As Long
    strRiga = String(255, Chr(1))
    lngLunghezzaRiga = SendMessage(Prova.hwnd, EM_GETLINE, 2, ByVal strRiga)
    NumRighe.Text = Left(strRiga, lngLunghezzaRiga)
End Sub

Per prima cosa è stata dichiarata una stringa di testo ed è stata riempita con una sequenza di 255 caratteri uguali  una parte dei quali sarà rimpiazzata dal testo della riga che verrà richiesta (gli altri andranno scartati). Fatto questo viene richiamata la funzione SendMessage, passandogli sempre l'handle della casella di testo Prova, l'identificativo del messaggio EM_GETLINE e in seguito il numero della linea che si desidera ottenere (dove 0 indica la prima, 1 la seconda e così via) e infine un riferimento alla stringa che dovrà contenere il risultato. SendMessage in questo caso restituirà il numero di caratteri copiati in strRiga: per questo nel mostrare la stringa di risultato nella casella NumRighe viene utilizzata la funzione Left.
 

<< INDIETRO by VeNoM00  


Video collegati Visualizza i video di questa pagina
Visualizza video sull'argomento "prendere".
Visualizza video sull'argomento "testo".
Visualizza video sull'argomento "linea".
Visualizza video sull'argomento "getline".
Visualizza video sull'argomento "prendere testo linea em getline vb6 api".


Dì la tua: cosa ne pensi?
Esponi il tuo punto di vista e condividilo con migliaia di persone

Oggetto nuova discussione:


Testo del messaggio:

E-Mail:

Quanto fa più dieci:




 





^ TOP  
Linkaci | Segnala errore | Invita | Stampa


pubblicità | privacy | visione | diritti | ufficio stampa | donazioni | scrivici
© 1999-2023 - P.IVA 02284690035 - Grafica, layout e contenuti sono di esclusiva proprietà di ArcadiA Club.

Powered by:
Spazi pubblicitari di alto livello
 

Compra in un click! | Cerca prodotti in offerta: