[ derrad @ 06.03.2002. 21:40 ] @
Hoću da zaključam ekran dok mi program menja vrednosti kontrola.
Na sporijim računarima to se vidi. Ako imam na strani dece preko 50 slogova
i dok mi se grid popunjava to izleda ružno non stop treperi. Takođe kada uradim
memorisanje u tabele forma mi bljesne.
Kako se to rešava u VB60 u VFP se to rešavalo jednostavno. Evo ovako:
Ako je aktivna forma na screenu - zaključaj nju.
_screen.ActiveForm.LockScreen = .T.
Kada završiš posao ti je otkjlučaj
_screen.ActiveForm.LockScreen = .F.
Ili zakljućaj ceo screen.
_screen.LockScreen = .T.
Pozdrav
[ jc denton @ 11.03.2002. 01:59 ] @
Citat:

'Takode kada uradim memorisanje u tabele forma mi bljesne.


Dosta neprecizan opis problema, inace.

Ako koristis msflexgrid, da ne bi imao treperenje dok se popunjava, napisi :
MSFlexGrid.redraw=false, pre popunjavanja,
pa kad se zavrsi popunjavanje, onda true da bi 'osvezio' sadrzaj grida.
A za bljeskanje forme nije mi jasno sta se desava, opisi bolje problem.
[ oadar @ 07.08.2002. 11:20 ] @
Ako forma vec treperi zasto ne pokusas da je sakrijes dok se podaci ne prikazu pa je onda ponovo prikazes:
Kad pocne da popunjava podacima:
Form1.Hide
Kada zavrsi:
Form1.Show

[ BlueSoniq @ 12.05.2005. 12:31 ] @
Meni ova funkcija radi perfektno cak i na Pentium I - nema nikakvog trepereja a cepa ko zmaj

Code:


Public Sub NapuniGridSQL(ByRef nekimsf As MSFlexGrid, ByRef SQLUpit As String)
Dim rstNeki As DAO.Recordset
Dim errADO As Error
Dim BrojKolona As Integer
Dim ii As Integer
Dim REDIC As Long
Dim sacuvaniformat As String
REDIC = 1

On Error Resume Next

Set rstNeki = baza.OpenRecordset(SQLUpit)
BrojKolona = rstNeki.Fields.Count
sacuvaniformat = nekimsf.FormatString
nekimsf.Clear
nekimsf.FormatString = sacuvaniformat
nekimsf.Rows = 1

REDIC = rstNeki.RecordCount
If Not rstNeki.BOF Then rstNeki.MoveFirst

nekimsf.Rows = REDIC + 1
REDIC = 1

With rstNeki
    If Not .BOF Then .MoveFirst
        While Not .EOF
              'nekimsf.AddItem ""
            For ii = 0 To BrojKolona - 1
                nekimsf.TextMatrix(REDIC, ii) = Prebaci(.Fields(ii))
            Next ii
            .MoveNext
            REDIC = REDIC + 1
        Wend
rstNeki.Close
Set rstNeki = Nothing
End With
If Err.Number <> 0 Then GoTo ERR_ENUM:
Exit Sub

ERR_ENUM:
SnimiLogGreska "Start Bas", "ADONapuniGridSQL", Err.Description, Err.Number, Err.Source

End Sub
[ vujkev @ 12.05.2005. 13:40 ] @
Koristi ovaj API
Code:

Declare Function LockWindowUpdate Lib "user32" _
    (ByVal hWnd As Long) As Long


Zaključavanje refresh kontrole, forme ....

Code:

LockWindowUpdate me.hWnd ' može i hWnd neke kontrole


a za osvežavanje sadržaja

Code:
LockWindowUpdate 0