Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Form cretini

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    41

    Form cretini

    Scusate l'idiozia della richiesta, ma sono all'inizio e sto sperimentando codice con cretinate volevo fare un programmino di quelli deficenti che tu metti un numero n e alla pressione del tasto ok crea n form prendendo come modello un form che ho già fatto. come posso dirgli da codice di andarsi a creare questi form e farli uguali a quello che ho già creato?

    Ah ovviamente questi form devono apparire in casuali parti diverse dello schermo.

    Lo so che è una cretinata ma ste scemenze mi aiutano ad apprendere!!

  2. #2
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Non vorrei sembrare troppo cattivo, ma ste cose secondo me non servono ad una cippa per apprendere! Però è una opinione, magari mi sbaglio

  3. #3
    hi hi.... e io come uno scemo che sto cercando di imparare kome si sposta un form...hihihhi....

    prova a fare un for ke ti visualizza tot cose quante ne vuoi te,....
    boh

    . .
    p
    e
    r
    p
    l
    e
    s
    s
    o

    m
    o
    d
    e
    W Le Cozze Allattamate

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    41
    Servono per imparare qualche comando tutto qui, ora non mi viene in mente un programma più utile per applicare sta cosa il concetto è che mi serve sapere come posso creare Form in quel modo poi il programma cretino è un esempio per far capire quello che voglio!

    Se faccio un for visualizzo oggetti già creati ma io ne devo creare n se in un ciclo faccio più volte la show di un form sempre una volta lo vedo

  5. #5
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Se non ricordo male crearli da zero da runtime è un po dura

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    41
    Ma io infatti non volevo crearli da zero volevo prendere come modello un form già fatto e copiarlo più volte

  7. #7
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Pardòn non avevo capito (sto a dormì)

    Se provi a crearti n oggetti form e poi ci carichi dentro sempre lo stesso e lo mostri che fà? Ti mostra sempre lo stesso o può aiutarti?

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    41
    E' quello che non so fare, come li creo questi oggetti da codice dato che il numero dovrebbe dipendere dalla scelta dell'utente?

  9. #9
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Ho provato e non serve comunque il codice è questo:

    dichiri un array di oggetti senza specificare la dimensione
    codice:
    Dim formsArray() As Object
    dopodiche nell'evento click del bottone o in qualsiasi altre parte di codice, quando vuoi che i form vengano caricati insomma:

    codice:
    Dim i As Integer
    ReDim Preserve formsArray(CInt(nForms.Text))
    
    Load Form2
    
    For i = 0 To CInt(nForms.Text)
        Set formsArray(i) = Form2
    Next
    
    For i = 0 To CInt(nForms.Text)
        formsArray(i).Show
    Next
    cioè cos'è che fa: ridimensiona l'array con il valore inserito dall'utente nella textbox, carica in meoria il form2 che ti sei in precedenza costruito, e lo mette in tutti gli elementi dell'array dio Forms. a questo punto faccio scorrere di nuovo tutto l'array e provo a mostrare il form n volte, ma lo mostra una volta sola. Ciò probabilmente significa che hai n elementi che puntano al Form2, ma che in memoria fisicamente ne hai allocato uno solo.

    Fai poi attenzione ad un particolare: quando usi la Redim, come in questo caso, definisce dinamicamente la dimensione dell'array. La parola chiave preserve in questo caso non serviva anche se appare. Era solo per dirti che se mai devi ridimensionare un array e mantenere però i dati che già ci sono memorizzati all'interno lo puopi fare proprio con la preserve.

  10. #10
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Ci sono 1 paio di errori...

    Ecco il nuovo codice:
    codice:
    Dim formsArray() As Object
    
    
    Private Sub Command1_Click()
    Dim i As Integer
    'Inizializza il generatore di num casuali
    Randomize
    'Metto -1 perchè i vettori iniziano da 0
    ReDim Preserve formsArray(CInt(nforms.Text) -1)
    
    Load Form2
    
    For i = 0 To CInt(nforms.Text)-1
    'IMPORTANTE:
    'la parola chiave new
    'per creare un nuovo oggetto
        Set formsArray(i) = New Form2
    'mette in una posizione casuale
        formsArray(i).Left = Int((Screen.Width - Form2.Width) * Rnd)
        formsArray(i).Top = Int((Screen.Height - Form2.Height) * Rnd)
    Next
    
    For i = 0 To CInt(nforms.Text)-1
        formsArray(i).Show
    Next
    End Sub

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.