Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Marathon: arriva il Fortnite hardcore
Marathon: arriva il Fortnite hardcore
Marathon è il titolo multiplayer competitivo del momento. Ecco quali sono le caratteristiche di gioco principali, insieme alle nostre prime considerazioni dopo qualche "run" nell'extraction shooter di Bungie
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
A New York HP ha messo al centro della scena HP IQ, la piattaforma di IA locale da 20 miliardi di parametri. L’abbiamo vista in funzione: è uno strumento che funziona, pensato per un target specifico, con vantaggi reali e limiti altrettanto evidenti
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-11-2006, 14:59   #1
Lehendakari
Member
 
Iscritto dal: Nov 2006
Messaggi: 34
[VB2005] Operazioni tra form diversi

Ciao a tutti, ho un paio di problemi in Visual Basic 2005 che non riesco a risolvere.

1) Ho un primo formA, da cui all'occorrenza apro un formB (lasciando aperto in secondo piano lo stesso formA). Se io devo copiare alcuni valori da alcune caselle di testo del formA in alcune caselle di testo del formB non ci sono problemi, ma se uso lo stesso codice per copiare altri valori dal formB al formA, non mi visualizza niente.
Dove sbaglio?
**nel formA, quando apro il formB, il valore è copiato correttamente**
Dim NuovoForm As New FormB
FormB.Show()
FormB.campo1.Text = me.campo1.text
**se dal formB uso la stessa espressione per ripassare i valori, non mi visualizza nulla**
formA.campo2.text=me.campo2.text
Se per assurdo (perchè non posso farlo, a meno di salvare tutti i dati inseriti, ma in questo caso se gli utenti inserissero dei dati per delle "prove" mi sovrascriverebbero quelli corretti esistenti) chiudessi il formA e lo riaprissi con il codice di cui sopra, i valori comparirebbero correttamente.

2)Nel formA ho una procedura che mi serve per riempire un Datagrid. Se la lancio dal form stesso non ci sono problemi.
Come faccio a chiamare la stessa procedura dal formB, in modo che quando lo chiudo e mi si riattiva il formA, mi aggiorni il Datagrid?
Ho provato con my.forms.formA.procedura() e mi da errore; ho provato a chiamare la procedura dall'evento Activate del formA e mettere nella chiusura del formB-> my.forms.formA.activate, ma non ricarica.

Grazie
Lehendakari è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2006, 08:01   #2
Nightmare
Senior Member
 
L'Avatar di Nightmare
 
Iscritto dal: May 2002
Città: Roma
Messaggi: 587
Per aprire FormB non fai altro che istanziare una nuova FormB e lanciare il metodo Show.
Se da FormB istanzi una nuova FormA... rimani in memoria con il FormA nuovo(FormAnew) e il FormA vecchio (FormAold) che hai tenuto aperto sotto FormB...

Se cambi le proprieta di qualche oggetti di FormAnew queste ovviamente non si ripercuotono in FormAold (che è quello aperto e che ti interessa)

Per fare una cosa del genere potresti portarti dietro il riferimento di FormAold nel momento che costruisci FormB modificandone il costruttore.
In questo modo all'interno di formB avrai gia il riferimento a FormAold senza che ne crei un altro inutilmente

Mi spiace non poterti scrivere codice ma non ho il prodotto sotto mano
__________________
AMD Phenom II 965 Black Edition | Gigabyte 990XA-UD3 | Corsair 8GB DDR3 1666 | Intel SSD 320 160GB + WD Caviar Green 3TB | AsusGeForce GTX770 DC II| CoolerMaster 690 II | Philips 231e1sb
Nightmare è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 14:39   #3
Lehendakari
Member
 
Iscritto dal: Nov 2006
Messaggi: 34
Ti ringrazio Nightmare.
Io ho trovato questa soluzione:

nel formB dichiaro un evento:
Event EventoInB ()
Questo evento lo chiamo ad esempio quando clicco su "salva", o chiudo il form:
RaiseEvent EventoInB ()

nel formA invece metto:
Dim WithEvents NuovoForm As New FormB
A questo punto tra gli eventi associabili al formA, trovo anche formB col rispettivo evento dichiarato di là:
Private Sub NuovoForm _EventoInB () Handles NuovoForm .EventoInB
'e qui metto il codice che mi interessa, dalla copia di alcuni campi di B (problema 1) alle procedure del formA (problema 2)
End Sub
Lehendakari è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 18:21   #4
Nightmare
Senior Member
 
L'Avatar di Nightmare
 
Iscritto dal: May 2002
Città: Roma
Messaggi: 587
si anche questa è un'ottima soluzione
__________________
AMD Phenom II 965 Black Edition | Gigabyte 990XA-UD3 | Corsair 8GB DDR3 1666 | Intel SSD 320 160GB + WD Caviar Green 3TB | AsusGeForce GTX770 DC II| CoolerMaster 690 II | Philips 231e1sb
Nightmare è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2006, 10:23   #5
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
in alternativa io faccio così:

mettiamo che ho 2 campi che il FormB deve restituire. txtCampo1 e txtCampo2

creo 2 readonly properties che si preoccupano di esporre il valore richiesto

Codice:
public readonly property Campo1 as string
    get
         return txtCampo1.text
    end get
end property

'lo stesso per il campo2
a questo punto dal form base faccio:

Codice:
dim c1 as string

dim frm as new formb
if frmb.showdialog = dialogresult.yes then
      c1 = frm.Campo1
else
      '...
end if
Kralizek è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei Wi-Fi 7 con il design di una vetta innevata: ecc...
La PS6 sarà solo Digital e potrebbe util...
Vivo X300 Ultra: il nuovo cameraphone è ...
Tutta la lineup auricolari Nothing in sc...
La serie vivo V70 arriva in Italia: cam ...
DAZN sarà visibile anche su aerei e navi...
I robot aspirapolvere ora in offerta su ...
L'Exynos 2600 a 2 nm di Samsung consuma ...
I 2 portatili migliori di tutta Amazon: ...
Tornano le offerte sui Kindle base, vers...
NVIDIA App si aggiorna: arriva DLSS 4.5 ...
Claude Code: il codice sorgente esposto ...
Recensione POCO X8 Pro: è lui lo ...
Il primo dissipatore a liquido di Noctua...
Opera Neon abilita il protocollo MCP: l'...
Dyson Clean+Wash Hygiene: lava e pulisce...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:59.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v