'desenhe 4 botoes indexados de 0 a 3 com o nome de CmdRegistro CmdRegistro
Private Sub CmdRegistro_Click(Index As Integer)
10 On Error GoTo CmdRegistro_Click_Error
20 With Me
50 for i = 0 to 3 'desabita os botoes e vai habitanto
CmdRegistro(i).enabled = false
next i
60 If TbCad.RecordCount > 0 Then
70 Select Case Index
Case 0 'primeiro
80 TbCad.MoveMin
71 MostraCadastro 'uma sub pra mostrar o cadastro
100 .CmdRegistro(2).Enabled = True 'proximo
120 .CmdRegistro(3).Enabled = True ' ultimo
130 .CmdRegistro(2).SetFocus
Case 1 'anterior
140 If TbCad.AbsolutePosition = 1 Then
160 TbCad.MoveMin
162 MostraCadastro 'uma sub pra mostrar o cadastro
170 .CmdRegistro(2).Enabled = True 'proximo
190 .CmdRegistro(3).Enabled = True ' ultimo
191 .CmdRegistro(2).SetFocus
200 Else
220 TbCad.MovePrevious
221 MostraCadastro 'uma sub pra mostrar o cadastro
230 HabiltaBotoesRegistro
231 .CmdRegistro(1).SetFocus
240 End If
250 Case 2 'proximo
260 If TbCad.AbsolutePosition = TbCad.RecordCount Then
270 TbCad.MoveMax
271 MostraCadastro 'uma sub pra mostrar o cadastro
290 .CmdRegistro(0).Enabled = True 'primeiro
300 .CmdRegistro(1).Enabled = True ' anterior
301 .CmdRegistro(1).SetFocus
310 Else
320 TbCad.MoveNext
321 MostraCadastro 'uma sub pra mostrar o cadastro
340 HabiltaBotoesRegistro
341 .CmdRegistro(2).SetFocus
350 End If
370 Case 3 'ultimo
380 TbCad.MoveMax
381 MostraCadastro 'uma sub pra mostrar o cadastro
400 .CmdRegistro(0).Enabled = True 'primeiro
410 .CmdRegistro(1).Enabled = True ' anterior
420 .CmdRegistro(1).SetFocus
430 End Select
440 End If
461 End With
470 On Error GoTo 0
480 Exit Sub
CmdRegistro_Click_Error:
490 MsgBox "Erro Interno de número " & Err.Number & " - " & Err.Description & " - linha " & Erl & " na procedure CmdRegistro_Click no Formulário FormNotas", vbCritical, "FormNotas"
End Sub