CALCULO DA VBMSGBOXSTYLE
Olá, boa tarde.
Estive analisando a assinatura do MsgBox, e queria saber como é feito o cálulo da constante [Ô]VbMsgBoxStyle[Ô]. Por exemplo, eu posso fazer isso:
MsgBox [Ô]teste[Ô] vbYesNo
E também posso fazer:
MsgBox [Ô]teste[Ô] vbYesNo + vbQuestion
Sei que cada constante é representada por um inteiro:
vbAbortRetryIgnore - 2
vbApplicationModal - 0
vbYesNo - 4
vbYesNoCancel - 3
vbOKCancel - 1
vbRetryCancel - 5
vbCritical -16
vbDefaultButton1 - 0
vbDefaultButton2 - 256
vbDefaultButton3 - 512
vbDefaultButton4 - 768
etc..
Então, alguém sabe como é feito esse cálculo para o VB saber qual a configuração da caixa de mensagem?? Em que é baseado a escolha desses números? Para que a soma de qualquer combinação deles não dê resultados iguais?
Acredito que não é por mera soma, pois:
vbAbortRetryIgnore + vbYesNoCancel = 5
vbYesNo + vbOKCancel = 5
Tudo bem que as constantes que escolhi são excludentes, mas toda essa soma é feita no mesmo
parâmetro.
Então não seria possÃvel haver um mesmo resultado para somas diferentes?
Espero que minha dúvida tenha sido clara. :
Essa dúvida vai me ajudar com um grande problema de banco de dados...
Obrigado!
Estive analisando a assinatura do MsgBox, e queria saber como é feito o cálulo da constante [Ô]VbMsgBoxStyle[Ô]. Por exemplo, eu posso fazer isso:
MsgBox [Ô]teste[Ô] vbYesNo
E também posso fazer:
MsgBox [Ô]teste[Ô] vbYesNo + vbQuestion
Sei que cada constante é representada por um inteiro:
vbAbortRetryIgnore - 2
vbApplicationModal - 0
vbYesNo - 4
vbYesNoCancel - 3
vbOKCancel - 1
vbRetryCancel - 5
vbCritical -16
vbDefaultButton1 - 0
vbDefaultButton2 - 256
vbDefaultButton3 - 512
vbDefaultButton4 - 768
etc..
Então, alguém sabe como é feito esse cálculo para o VB saber qual a configuração da caixa de mensagem?? Em que é baseado a escolha desses números? Para que a soma de qualquer combinação deles não dê resultados iguais?
Acredito que não é por mera soma, pois:
vbAbortRetryIgnore + vbYesNoCancel = 5
vbYesNo + vbOKCancel = 5
Tudo bem que as constantes que escolhi são excludentes, mas toda essa soma é feita no mesmo
parâmetro.
Então não seria possÃvel haver um mesmo resultado para somas diferentes?
Espero que minha dúvida tenha sido clara. :
Essa dúvida vai me ajudar com um grande problema de banco de dados...
Obrigado!
Na verdade eh por mera soma, mas das partes condizentes...
Veja so o que equivale o 292...
Veja so o que equivale o 292...
Option Explicit
Sub teste()
If MsgBox([Ô]Você frequneta o VBMania ?[Ô], 292, [Ô]Pesquisa[Ô]) = 6 Then
[ô]If MsgBox([Ô]Você conhece o VBMania ?[Ô], vbQuestion + vbYesNo + vbDefaultButton2, [Ô]Pesquisa[Ô]) = vbYes Then
MsgBox [Ô]Que legal ![Ô], 48
Else
MsgBox [Ô]Poxa, então visite www.vbmania.com.br[Ô], 16
End If
End Sub
Amigo, creio que não tem como dar resultados iguais, até porque:
Isso aà em cima, JAMAIS vai ser utilizado.
Como você vai colocar numa MsgBox botões para: Abortar, Tentar Novamente, Ignorar, Sim, Não, Cancelar?
Isso não é padrão no Windows (ou seja, esse resultado nem sequer é exibido/configurado numa MsgBox)
Não sei se entendi certo o que você quis dizer...
Citação:vbAbortRetryIgnore + vbYesNoCancel = 5
vbYesNo + vbOKCancel = 5
Isso aà em cima, JAMAIS vai ser utilizado.
Como você vai colocar numa MsgBox botões para: Abortar, Tentar Novamente, Ignorar, Sim, Não, Cancelar?
Isso não é padrão no Windows (ou seja, esse resultado nem sequer é exibido/configurado numa MsgBox)
Não sei se entendi certo o que você quis dizer...
Tópico encerrado , respostas não são mais permitidas