Newsgroup: it.comp.lang.visual-basic
Titolo: Intercettare tasti o mouse durante evento scroll di una MSHFlexgrid

Salve a tutti,
Il problema è il seguente :
Vorrei poter "gestire" una MSHFlexgrid in funzione del tasto premuto
(esempio PAGE UP/DOWN,HOME,FINE) oppure del click del mouse sulla scrollbar
verticale dell'oggetto in questione ma nell'evento Scroll non c'è niente di
tutto cio.
L'obiettivo è quello di caricare all'occorenza questa particolare grid.
E' possibile ?
Saluti
M.Damato

[*Michele Damato* = 
m.da...@infor2000soft.it
 in
news:vavpb.88850$
e6.32...@twister2.libero.it
] ha scritto:

Non so per i tasti che hai elencato, ma di certo la freccia in alto (quando
ci si trova in testa alla griglia) e la freccia in basso (quando ci si trova
in coda alla griglia) non sono intercettabili. Se ho ben capito carichi la
griglia a "blocchi" e vorresti caricare il blocco precedento o seguente in
funzione dell'azione dell'operatore. Sarebbe quello che faccio io, con la
vecchia Grid32.OCX, l'unica cghe sente tutti i tasti. Mi par di aver
verificato che la MS_H_FlexGrid sente i tasti, ma l'ho mollata in quanto
troppo incasinata.

 > L'obiettivo č quello di caricare all'occorenza questa particolare


 wrote:

L'evento Scroll non ti da parametri, però puoi verificare la TopRow in
modo da stabilire se lo scroll è avvenuto verso il basso o verso
l'alto, LeftCol per gli altri spostamenti.
Con l'evento KeyDown, KeyUp "senti" i tasti che hai elencato sopra.
Ciao!

 dei 100 records e cosě via.
Sono proprio cieco: leggo adesso che hai sempre parlato di una MsH.
Beh? Dalle prove che avevo fatto questa sente i tasti. Non so per lo scroll,
ma i tasti sě.
Prova a gestirli sul form negli eventi KeyDown mettendo KeyPreview=True...

effetto visivo interessante. Altro non ho trovato.
Beh, al contrario della MSFlex puoi usare un recordset come sorgente
dati, così non devi compilare cella per cella, chiaro che non è la
soluzione ottimale per tutti.
Ciao!

Molti controlli ti permettono di collegarti ad un recordset direttamente
come anche questo.
Nel mio caso però ho avuto il seguente problema ossia :
 Leggo da un recordset legato ad una tabella di 800.000 records. Se utilizzo
di MSH la datasource constringo la procedure a riempiere la griglia
inutilmente facendo appesantire il tutto. Poi inoltre dopo aver letto per
esempio dalla TABELLA X i campi A e B (per comodità numerici) devo
visualizzare nella MSH la colonna C che è pari alla somma. Come si fa con la
datasource ormai impostata sul mio recordset ?
"ErPotenza" <no....@thank.you> ha scritto nel messaggio
news:ae1dqv0biuame6nd9...@4ax.com...


datasource ormai impostata sul mio recordset ?
Ma infatti io volevo soltanto precisare che in alcuni casi la griglia
ti offre anche questo vantaggio, non volevo dire che fa al caso tuo.
E comunque in alcuni casi si può caricare il recordset con le sole
righe da visualizzare, e compilare soltanto una terza colonna
calcolata. Ripeto, non sto dicendo che questa sia la soluzione per il
tuo problema.
Ciao!

Perdonami se disturbo ancora, visto che mi ci trovo sai per caso come è
possibile(perchè credo che lo sia senz'altro) durante il caricamento di una
riga usando il metodo additem in funzione di una condizione ( se A > B =>
cella con FORECOLOR ROSSO altrimenti NERA. Esempio stupido ma credo renda
l'idea) impostare questa proprietà ?
Grazie in anticipo per qualsiasi indicazione.
Ciao
Michele
"ErPotenza" <no....@thank.you> ha scritto nel messaggio
news:6n2dqv43e83r67gaf...@4ax.com...


Michele
Su una MSHFlex temo non sia possibile, bisogna verificare i campi
interessati e colorare ogni cella, "a mano". Una funzione come quella
che chiedi tu lo vista solo sulla JanusGrid se non ricordo male.
Ciao!

Sempre che tu sappia sarebbe possibile "gestire" sempre visibile la riga
FIXED ossia quella che contiene l'etichette delle colonne in maniera tale
che quando faccio lo scroll mi resti sempre disponibile in maniera tale da
facilitare chi legge ?
Grazie per le dritte su keyup e down e soprattuto su Toprow che mi hanno
permesso di risolvere il problema.
Ciao
Michele
"ErPotenza" <no....@thank.you> ha scritto nel messaggio
news:vl3dqvsr598n5gbdc...@4ax.com...


facilitare chi legge ?
Scusa il ritardo ma altri impegni chiamano!
Il numero di righe che viene impostato come fixed è dato dalla
proprietà FixedRows. Se ne hai una sola, il suo indice di riga è 0.
Se ancora non avevi risolto ... ecco qua ...
Ciao!

Si ok.
Ma volevo sapere se è possibile avere la riga FIXED sempre VISIBILE anche
quando si fa lo scroll a pagine successive.
Un po' lo split di riga che puoi fare con excel per esempio.
Ciao
M.Damato
"ErPotenza" <no....@thank.you> ha scritto nel messaggio
news:f8ifqvsk7ukk44knf...@4ax.com...


M.Damato
Cioè una riga o più di dati (non intestazioni di colonna) fissa?
Per quanto ne so io anche questo è oltre le possibilità della MSHFlex.
Potresti usarne due ma la cosa diventa complicata da gestire.
Ciao!