Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Centralizar uma imagem em um form MDI


Fabin

Pergunta

2 respostass a esta questão

Posts Recomendados

  • 0

fabin, eu tenho esse codigo aqui q centraliza um form na tela:

Form1.Move (Screen.Width - Form1.Width) / 2, (Screen.Height - Form1.Height) / 2

ai é so você adapta-lo pro picture box.

EDITADO:

opa, entendi errado, entendi q a imagem tava num picturebox.

agora, na propriedade picture não sei se da pra centralizar, mas o q você pode fazer é por a imagem num form mdichild sem borda e do tamanho da imagem e mostra ele de fundo no mdi. ai você usa o codigo acima pra centralizar (so q faca baseado no tamanho do mdi pai e vez de fazer baseado na screen como no exemplo).

e se você quiser q fique sempre no meio, ponha o mesmo codigo no evento resize do mdi pai.

Editado por kuroi
Link para o comentário
Compartilhar em outros sites

  • 0
fabin, eu tenho esse codigo aqui q centraliza um form na tela:

Form1.Move (Screen.Width - Form1.Width) / 2, (Screen.Height - Form1.Height) / 2
ai é so você adapta-lo pro picture box. EDITADO: opa, entendi errado, entendi q a imagem tava num picturebox. agora, na propriedade picture não sei se da pra centralizar, mas o q você pode fazer é por a imagem num form mdichild sem borda e do tamanho da imagem e mostra ele de fundo no mdi. ai você usa o codigo acima pra centralizar (so q faca baseado no tamanho do mdi pai e vez de fazer baseado na screen como no exemplo). e se você quiser q fique sempre no meio, ponha o mesmo codigo no evento resize do mdi pai.
opa e aew kuroi blzinha?? já consegui resolver o problema atraves desse código aqui mas primeiro cloquei uma picture depois uma image e dentro da image coloquei a imagem que eu queria e coloquei este código
Dim mode As Integer
Private Sub MDIForm_DblClick()
mode = mode + 1
If mode > 2 Then
    MDIForm_Resize
End If
End Sub
Private Sub MDIForm_Load()
Picture1.Visible = False
Picture1.BackColor = Me.BackColor
MDIForm_Resize
End Sub
Private Sub MDIForm_Resize()
Picture1.AutoRedraw = True
    Picture1.Cls
    Picture1.Height = Me.ScaleHeight + Picture1.Height - Picture1.ScaleHeight


    Select Case mode
        Case 0 'centered
        Picture1.PaintPicture Image1.Picture, (Me.ScaleWidth - Image1.Width) / 2, (Me.ScaleHeight - Image1.Height) / 2
        Case 1 'stretched
        Picture1.PaintPicture Image1.Picture, 0, 0, Me.ScaleWidth, Me.ScaleHeight
        Case 2 'tiled
        Dim i As Integer, j As Integer


        For i = 0 To Screen.Height Step Image1.Height


            For j = 0 To Screen.Width Step Image1.Width
                Picture1.PaintPicture Image1, j, i, Image1.Width, Image1.Height
            Next

        Next

    End Select

Me.Picture = Picture1.Image
Picture1.AutoRedraw = False
End Sub

valews pela atençao

abraço

t+

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...