Modules

5.39 API - Ridimensionare una maschera limitandone il formato minimo e massimo
 
Nel database di esempio allegato a questa FAQ si mostra come sia possibile gestire le dimensioni di una maschera dichiarata dimensionabile. In esso è indicato come imporre le dimensioni minime e massime durante il resize dei una maschera.

La stessa procedura potrebbe essere realizzata inserendo nell'evento Resize la forzatura delle dimensionimMinime e/o massime, ma l'effetto grafico sarebbe decisamente pessimo con il continuo sfarfallio dei bordi della maschera.

'Il vantaggio della tecnica del SubClassing impedisce l'azione passando all'area video le dimensioni consentite...!!!

Occorre fare attenzione alla corretta impostazione del valore massimo che non deve essere inferiore alle dimensioni fisiche della maschera intese come InsideHeight e InsideWidth poichè si stà copiando un'area di memoria video.
'
Importante per gli utenti di Access XP
La tecnica del SubClassing in questa versione di Access ha problemi, ma convertendo in MDE il progetto tali problemi non si verificano più.
L'alternativa è creare una DLL esterna e passare a quella la gestione del SubClassing.

Nota di Giorgio Rancati
Il crash di Access in determinate situazioni è notificato nella Kb:
ACC2000: Rilevamento e impedimento dello scorrimento dei record di una maschera mediante la rotellina del mouse
http://support.microsoft.com/default.aspx?scid=kb;it;278379&Product=accIN2
(dalla versione 2000 in su)

Nota di Alessandro Baraldi
Dopo aver aperto in modalità struttura la maschera non cercate di aprirla subito dopo in modalità visualizzazione. Questo porterebbe al crash l'applicativo per le considerazioni dette sopra.
Chiudere prima Access, poi riaprire la maschera in modalità visualizzazione per verificarne il funzionamento corretto.
Per evitare il problema descritto, basterà convertire il progetto in MDE. La versione pubblicata, per permettere la completa visualizzazione del codice, non poteva essere distribuita come MDE.

Download:
 
  API_Limit_Sizing.zip (151Kb) MSAccessXP database


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.