• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

delimery

[VB6]-criar picturebox

9 mensagens neste tópico

Viva

Pretendo que quando pressionado um botao uma imagem apareça. Essa imagem nao quero que seja um form, pois quero usá-la depois como um icone que o user vai deixar aonde quiser. O problema de mover a imagem já esta resolvido.

Nao consigo é fazer com que uma imagem apareça...

Private Sub Form_Paint()
    ' Create a stdPicture object.
    Dim Pict1 As New stdPicture
    Pict1 = LoadPicture("C:\Windows\Greenstone.bmp")
    PaintPicture Pict1, 0, 0
End Sub 

Este exemplo está no MSDN mas no meu compilador dá erro em "    Dim Pict1 As New stdPicture"

Será que me podem ajudar, pois ja parti muita pedra e ainda nao consegui chegar a uma solução aceitável...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

não deve ser isto, mas experimenta pôr StdPicture com a primeira letra maiúscula

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

yap, esse é um dos erros agora temos outro...

Private Sub Command1_Click()
    Dim Pict1 As New StdPicture
    Pict1 = LoadPicture("C:\aa.bmp")
       PaintPicture Pict1, 0, 0
End Sub

este é o codigo que estou a usar, mas dá erro qdo carrego no command1.

o erro é:

" compile error: invalid use of property"

Pict1 tem vários campos, mas dos campos que me aparecem nao vejo nenhum util para aquilo que quero

68898268lv9.jpg

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta substituir o StdPicture por PictureBox.

Seguindo a tua sugestão, agora parece que nao sei carregar a imagem ...


Private Sub Command1_Click()
    Dim Pict1 As PictureBox
    Pict1.Picture = "C:\aa.bmp"
    Pict1.Left = 0
    Pict1.Top = 0
    'Pict1.AutoSize = True
    Pict1.Visible = True
    
    'PaintPicture Pict1, 0, 0
End Sub

semttulofb8.jpg

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens que usar na mesma o LoadPicture.

Pict1.Picture = LoadPicture("C:\aa.bmp")

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens que usar na mesma o LoadPicture.

Pict1.Picture = LoadPicture("C:\aa.bmp")

E fazer com que ela apareça agora?

O meu objectivo é que fosse criado uma imagem nova e que fizesse parte de uma array. Ou seja, cada vez que ela aparece, depois passa a ser considerada como um elemento de um array de imagem, para que depois podesse aceder move-la com as funçoes que ja tenho feitas...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas....

Se percebi o que queres, então faz o seguinte, Primeiro crias uma picturebox, e em seguida crias um array para essa picturebox. Para criares o arry caso não saibas basta ires à propriedade Index da da picturebox e colocas um zero, se reparares, depois dizto vai aparecer "(0)" em frente ao nome da picturebox.

Depois para mostrares a picturebox faz (imaginando que a picturebox tinha o nome de pctTeste):

load pctTeste(1)

pctTeste(1).left = X

pctTeste(1).top = Y

pctTeste(1).show

Para acrescentares outras é trocares o "1" por 2 ou 3, etc..

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas....

Se percebi o que queres, então faz o seguinte, Primeiro crias uma picturebox, e em seguida crias um array para essa picturebox. Para criares o arry caso não saibas basta ires à propriedade Index da da picturebox e colocas um zero, se reparares, depois dizto vai aparecer "(0)" em frente ao nome da picturebox.

Depois para mostrares a picturebox faz (imaginando que a picturebox tinha o nome de pctTeste):

load pctTeste(1)

pctTeste(1).left = X

pctTeste(1).top = Y

pctTeste(1).show

Para acrescentares outras é trocares o "1" por 2 ou 3, etc..

Cumps

fazendo +- como escreveste já deu para lá chegar

Load node_pic(3)

node_pic(3).Left = 0

node_pic(3).Top = 0

node_pic(3).Visible = True

Mas continuando a abusar da vossa boa vontade ;)

semttuloaj6.jpg

Eu tenho duas pictures box com as imagens a escolher do lado esquerdo e o local onde o user as vai deixar do lado direito.

O que eu quero é que a imagem que é criada passe para a picture box do lado direito, mas não dá pois ela aparece no lado esquerdo.

Se for der mto trabalho tb a solução é simples, por tudo dentro de uma picture box e tá a andar... :D

Outra situação:

Aquela bola vermelha é um Shape, o qual eu altero a sua cor dependendo do valor de outras variaveis. Aquele shape vai estar associado ao estado do que representa a imagem.

Eu tenho as imagens em arrays tal como os shapes. ou seja o user tem que mover para onde quiser ambos, não dará para criar as duas coisas ao mesmo tempo e movê-las??

A unica solução que estou a ver é em o user colocar a imagem onde quer, depois o programa vê qual o x e o y da imagem e coloca lá automaticamente  o shape. ainda nao testei esta solução mas parece-me a mais logica. O que vos parece???

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora