joninho Posted May 14, 2006 at 12:44 PM Report #27357 Posted May 14, 2006 at 12:44 PM Uma array é uma estrutura de data, que apresenta um ou mais valores numa única variável. Por ex: Private Sub Command1_Click() Dim aNossaArray(3) As String 'aqui declaramos a nossa array com 3 andares aNossaArray(1) = "Olá " 'atribuimos o valor "Olá" ao primeiro andar aNossaArray(2) = "tudo " 'atribuimos o valor "tudo " ao segundo andar aNossaArray(3) = "bem?" 'atribuimos o valor "bem?" ao terceiro andar MsgBox aNossaArray(1) ' vai mostrar no ecrã "Olá" MsgBox aNossaArray(1) & aNossaArray(2) & aNossaArray(3) ' aqui juntamos as trÊs e fica "Olá tudo bem?" (sem aspas) End Sub Usar um ciclo para apresentar arrays: Private Sub Command1_Click() Dim i As Integer ' variavel contador para o ciclo for... Dim aNossaArray(3) As String aNossaArray(1) = "Olá " aNossaArray(2) = "tudo " aNossaArray(3) = "bem?" For i = 1 To 3 ' o ciclo vai dar 3 voltas, e vai começar do numero 1 até ao 3 cada volta que o ciclo deia acontece isto: (i = i + 1) MsgBox aNossaArray(i) ' e aqui vamos apresentar o andar da array, na primeira volta o i = 1 entao apresenta um MSgBox com o conteudo "Olá" e assim sucessivamente.. Next End Sub agora fazer ler para a array com um ciclo: Private Sub Command1_Click() Dim i As Integer Dim aNossaArray(3) As String 'aqui declaramos a nossa array com 3 andares For i = 1 To 3 aNossaArray(i) = InputBox("Insira o valor para o andar " + Str(i)) ' o sistema é o mesmo mas em vex de apresentar os valores, lê os valores... Next For i = 1 To 3 MsgBox aNossaArray(i) Next End Sub estes são os termos básicos de array... (acho eu)
UnKnowN Posted May 14, 2006 at 02:55 PM Report #27382 Posted May 14, 2006 at 02:55 PM No 2º Exemplo tu nao declaras que ´ For i = 1 To 3 i = i + 1 por isso i nao vai ser = a i + 1 i só vai ser i, mas 3 vezes 🙂 PS: Muito Obrigado pelo Tutorial, eu tinha mal era que nao punha aspas, um erro lamme lol
joninho Posted May 14, 2006 at 08:14 PM Author Report #27414 Posted May 14, 2006 at 08:14 PM opa nao precisas de meter o i = i + 1 o proprio ciclo faz isso, a cada volta que dê acrescenta um valo ao i.. 🙂
UnKnowN Posted May 15, 2006 at 08:18 AM Report #27470 Posted May 15, 2006 at 08:18 AM Ah ya esquece tava a ver o código de um ponto de vista diferente ... pensava que estavas a dizer que de uma variavel x=1 to 3 i=i + 1 , esquece 🙂
NuGuN Posted June 13, 2006 at 04:55 PM Report #32798 Posted June 13, 2006 at 04:55 PM Mais um promenor dos arrays... Se por acaso quisermos que o nosso array comesse numa posição especifica e não em zero podemos fazer o seguinte: Dim aNossaArray(4) as String 'Começa em 0 e vai ate 4, ou seja, tem 5 posições Dim aNossaArray(10 To 14) as String 'Continua a ter 5 posições mas começa na posição 10 e vai ate a posição 14 Podemos tambem fazer arrays dentro de outro array. Por exemplo: Posição: 1 2 3 4 5 Num Array normal(aNossaArray(4)) teriamos uma estrotura deste genero -> |__|__|__|__|__| Agora se fizermos "Dim aNossaArray(0 To 4, 0 To 4) as String teremos desntro de cada posição mais 4 posições: Posição: 1,0 2,0 3,0 4,0 5,0 |___|___|___|___|___| 1,1 2,1 3,1 4,1 5,1 |___|___|___|___|___| 1,2 2,2 3,2 4,2 5,2 |___|___|___|___|___| 1,3 2,3 3,3 4,3 5,3 |___|___|___|___|___| 1,4 2,4 3,4 4,4 5,4 |___|___|___|___|___| 1,5 2,5 3,5 4,5 5,5 |___|___|___|___|___| O desenho naõ esta grande coisa mas pronto ? Por vezes não sabemos quantos campos vamos necessitar no nosso array, pois bem, o VB6 permite redimencionar um array mesmo depois do programa estar em execução : Dim aNossaArray() As String Private Sub Form_Load() ReDim Preserve aNossaArray(4) End Sub Redim -> Para redimencionar a variavel Preserve -> Serve para preservar informação que o array contenha. Caso se utilize apenas "ReDim aNossaArray(4)", o array vai ficar "Em Branco" cumps
joninho Posted June 13, 2006 at 05:42 PM Author Report #32813 Posted June 13, 2006 at 05:42 PM yah, eu kualker dia meto u tutorial mais xeio 😄 pk tou a dar arrays 👍 e meto metodos de ordenação peskisa, e também como se declara arrays a meio do prog, "redeclara" 🙂 lol
NuGuN Posted June 15, 2006 at 12:17 PM Report #33116 Posted June 15, 2006 at 12:17 PM Sabes-me dizer se da para inicialisar um aray como em C? do tipo -> const unsigned char ArrayTeste[] = "O\L\A"; Em VB6 não sei inicializar um array quando o declaro ? cumps
joninho Posted June 15, 2006 at 09:11 PM Author Report #33195 Posted June 15, 2006 at 09:11 PM Sabes-me dizer se da para inicialisar um aray como em C? do tipo -> const unsigned char ArrayTeste[] = "O\L\A"; Em VB6 não sei inicializar um array quando o declaro ? cumps nao, se quiseres inicialisarla com 0 fazes: dim array(1 to 4) as integer sub main() for i = 1 to 4 array(i) = 0 next end sub precebes o codigo?
NuGuN Posted June 16, 2006 at 02:01 PM Report #33274 Posted June 16, 2006 at 02:01 PM sim perfeitamente 😛
joninho Posted June 16, 2006 at 06:43 PM Author Report #33336 Posted June 16, 2006 at 06:43 PM sim perfeitamente 😄 se for para strings, inicias com "" em vex de 0 😛
NuGuN Posted June 18, 2006 at 02:53 PM Report #33584 Posted June 18, 2006 at 02:53 PM Só é pena é não dar para fazer como em C++ por exemlpo :S Se quiser inicializar o array com uma letra em cada Campo não sou capas, tenho de fazer assim: ArrayTeste(0) = "O" ArrayTeste(1) = "L" ArrayTeste(2) = "A" E se for uma string mt grande não é nada bonito estar a fazer issu uma a uma ? cumps
joninho Posted June 18, 2006 at 10:55 PM Author Report #33682 Posted June 18, 2006 at 10:55 PM Só é pena é não dar para fazer como em C++ por exemlpo :S Se quiser inicializar o array com uma letra em cada Campo não sou capas, tenho de fazer assim: ArrayTeste(0) = "O" ArrayTeste(1) = "L" ArrayTeste(2) = "A" E se for uma string mt grande não é nada bonito estar a fazer issu uma a uma ? cumps como é que fasias em c++? opa poder podes, axo eu, se for o que tou a pensar se for uma array tipo array(1 to 100) as string for i = 1 to 100 array(i)= Inputbox("Introduza o conteudo da variavel") next e inseres um carater para cada posiçao...
TheDark Posted June 19, 2006 at 02:21 AM Report #33728 Posted June 19, 2006 at 02:21 AM se for uma array Array é máxó! 😄 Desaparecido.
NuGuN Posted June 19, 2006 at 07:15 PM Report #33791 Posted June 19, 2006 at 07:15 PM LOL... joninho Assim dá mas se for uma string mt grande... Eu queria era algo deste tipo -> static char name1[ ] = { 'O', 'L', 'A' }; , mas não sei fazer em VB6, e tenho as mionhas duvidas que dê, ja procurei e aparece mas é pra .NET cumps
joninho Posted June 21, 2006 at 07:06 PM Author Report #34144 Posted June 21, 2006 at 07:06 PM opa, mas isso 😕 nao sei 😕 sorry 😛
freesumo Posted June 22, 2006 at 03:57 AM Report #34191 Posted June 22, 2006 at 03:57 AM NuGuN não sei para que queres declarar uma string dessa maneira quando podes fazer isso com uma variável do tipo String, de qualquer modo podes fazer o seguinte: Dim a As Variant Dim b As Variant Private Sub Command1_Click() a = Array("O", "L", "A") b = Array("Forth", Form1.Command1.Caption, Year(Date), "Visual Basic", 34.676, "Java", 76, 954, "Cobol", Time, "ADA") For i = 0 To UBound(a) Step 1 Print a(i); Next i For i = 0 To UBound(b) Step 1 Print , b(i) Next i End Sub Cyas 🙂
Xetly Posted May 22, 2007 at 06:52 PM Report #102125 Posted May 22, 2007 at 06:52 PM Em 13/06/2006 às 19:42, joninho disse: yah, eu kualker dia meto u tutorial mais xeio 😛data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw== pk tou a dar arrays 😉data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw== e meto metodos de ordenação peskisa, e também como se declara arrays a meio do prog, "redeclara" 🙂data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw== lol Boas pessoal ando agora a programar em VB6.0 e como final de periodo eu i um colega meu propose-mos ao nosso prof como projecto final fazer o jogo das Damas. Au qual conseguimos responder ate agora a todas as dificuldades. Mas agora encaramos com um grave problema :S nao conseguimos fazer um array que dê para fazer o movimento da peça :s ou seja temos um array mx esta a fazer a contagem na vertical :S ou seja 1;2;3;4...etc . e o tipo de array pretendido é como esse ai no exemplo. Vou aqui deixar a parte do codigo onde tem de ser aplicado o Array '========Ciclo para Criar para por peças Tabuleiro========' For i = 1 To 8 For x = 1 To 8 Load peca1(imagenumero) '=============================================' '=============================================' peca1(imagenumero).Width = 855 peca1(imagenumero).Height = 855 peca1(imagenumero).Top = 200 + (855 * x) peca1( imagenumero).Left = 855 + (855 * i) peca1( imagenumero).Visible = True peca1(imagenumero).Stretch = True imagenumero = imagenumero + 1 Next x Next i Pontos esta aqui e espero que me possam ajudar 😄
NuGuN Posted May 25, 2007 at 12:35 PM Report #102627 Posted May 25, 2007 at 12:35 PM Boas... Não sei se percebi bem o que queres... Se o que queres é um array para guardar as posições das peças então imagina que o tabuleiro tem 10 quadrados e largura e 10 quadrados de comprimento. Para isto crias um array de 10x10 - dim varArray(9,9) - é 9 e não 10 porque começa do zero. Para guardares a posição 3 em largura e 7 em comprimento farias isto -> varArray(2, 6) = .... Cumps
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now