Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - controlli su un form multi istanza
Forum - Visual Basic 6 - controlli su un form multi istanza

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
iz1kbp (Normal User)
Rookie


Messaggi: 26
Iscritto: 29/02/2020

Segnala al moderatore
Postato alle 11:35
Sabato, 29/02/2020
Buongiorno a Tutti...
faccio una domanda un po complicata:
Ho un form con una serie di tasti (li chiamo T1..Tn per dare un riferimento in questo post) che fanno un certa funzione (evento click),piu tasti di questi possono essere attivi contemporaneamente.
Ci sono poi altri tasti (T2 idem...) che semplicemente memorizzano quali dei tasti precedenti (T1---Tn)sono stati schiacciati, una sorta di MACRO.
Sul form aperto una sola volta funziona tutto perfettamente
la mia necessita è di aprire questo form piu volte (base +istanze...)  e far si che i tasti che funzionano da MACRO (sul form iniziale, T2) riescano a registrare lo stato dei tasti T1..Tn presenti sia sul form di partenza che su gli altri form aperti in seconda, terza istanza...e cosi via.
Qualcuno puo darmi qualche dritta su da che parte iniziare?
Grazie a chiunque possa darmi una mano
Mario :)

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 14:15
Sabato, 29/02/2020
Non ho capito quasi nulla (... registrare stato dei tasti?? Tasti che funzionano da MACRO?? Prima T1..Tn e poi T2 ??? e comunque Button non tasti ...)

Facciamo un passo indietro ...

A cosa ti serve tutto questo "cinema" ? Spiega la vera funzione del programma, dei form e dei button ... e se ne riparla ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Carlo (Member)
Guru


Messaggi: 1344
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 22:46
Domenica, 01/03/2020
Anche io ho capito poco, se i form che apri sono istanze diverse dello stesso programma, ad ogni clic puoi salvare su un file testo condiviso lo stato dei tasti premuti sulle varie istanze.
Importante il file condiviso deve sempre essere aperto e chiuso, per evitare errori di file in uso.
Se hai anche bisogno di sapere da quale istanza si sta modificando il file, puoi mettere il pid del thread, la gestione dipende dall'uso che ne devi fare.


in programmazione tutto è permesso
PM Quote
Avatar
iz1kbp (Normal User)
Rookie


Messaggi: 26
Iscritto: 29/02/2020

Segnala al moderatore
Postato alle 21:27
Lunedì, 02/03/2020
Ciao a tutti. i form che apro sono istanze dello stesso programma (form1 , a cui si aggiunge form1 bis e cosi via...) Registrare una macro significa "catturare" lo stato di alcuni controlli per poi riprodurre la situazione usando un solo tasto e non dovendo schiacciare tutti i tasti.Non devo salvare alcun file.
faccio un esempio. sul form 1 sono attivi i tasti t1a t1b t1d e schiacciando il tasto t2 io  catturo lo stato dei tre tasti precedenti (ho una matrice a 3 elementi in cui memorizzo lo stato di quesi tre tasti). se piu in la volessi riprodurre questa situazione, basta che schiaccio t2 e leggendo la matrice, riporto i tasti alla posizione salvato in precedenza senzache debba schiacciarli ad ubn o ad uno. Questo è il funzionamento sul form SINGOLO e funziona.
Ipotizziamo di aprire una seconda istanza del form ed attiviamo i tasti t1Abis t1Bbis t1dbis.
La mia domanda è : come faccio, sempre se è possibile,a vedere lo stato dei tasti sul form aperto in seconda istanza dato che , da codice, il tasto è sempre lo stesso ?
Con il mio programma piloto periferiche dmx...giusto per dire a cosa serve tutto questo cinema :)

mario

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 23:15
Lunedì, 02/03/2020
Continuo ad avere dubbi ... puoi postare del codice (semplificato) per fare un piccolissimo esempio ?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Goblin (Member)
Expert


Messaggi: 375
Iscritto: 02/02/2011

Segnala al moderatore
Postato alle 23:37
Lunedì, 02/03/2020
Tenuto conto che uso un linguaggio di programmazione diverso "delphi", ma credo che la "logica" nel mostrare i vari form, a discapisco del linguaggio, sia lo stesso .. bene .. ammetto di non aver capito niente  ... scusatemi
G.


Ibis redibis non morieris in bello
PM Quote
Avatar
Carlo (Member)
Guru


Messaggi: 1344
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 1:50
Martedì, 03/03/2020
Testo quotato

Postato originariamente da iz1kbp:
Non devo salvare alcun file.
mario



Se non salvi nessun file non hai la comunicazione tra le istanze aperte.

Ancora non ho capito, ma se vuoi programmare un'interfaccia che poi riapri, e le interfacce aperte devono interagire tra di loro, puoi usare un UserControl, se non lo hai mai usato è un po' difficile da spiegare, ho scritto velocemente un esempio, che non fa nulla ma è esplicativo.

Quando apri il programma allegato, clicca sul bottone [ NUOVO BANCO ] e vedrai che BANCO(x) si aggiungerà nel pannello, ogni clic un BANCO(x) nuovo. Ogni BANCO(x) contiene un UserControl1 che funzionerà in modo indipendente.
Ho inserito dei bottoni di esempio per farti vedere come raggiungere i componenti nel BANCO ma inseriti nell'UserControl.

L'UserControl1 è un'interfaccina che programmi una volta poi la ricicli tutte le volte che vuoi, anche qui ho inserito una label che cambia in base al bottone cliccato, ho programmato solo la prima riga.

Non ho indicizzato i bottoni perché così è tutto più chiaro.

PS. mi sono accorto ora che hai postato VB6, spero che è un errore, il mio esempio è in VB .NET, puoi sempre vedere l'exe nello zip PiuFormUserControl\bin\Debug\PiuFormUserControl.exe
l'UserControl comunque esiste anche in VB6


Carlo ha allegato un file: PiuFormUserControl.zip (94247 bytes)
Clicca qui per scaricare il file

Ultima modifica effettuata da Carlo il 03/03/2020 alle 13:18


in programmazione tutto è permesso
PM Quote
Avatar
iz1kbp (Normal User)
Rookie


Messaggi: 26
Iscritto: 29/02/2020

Segnala al moderatore
Postato alle 0:38
Mercoledì, 04/03/2020
Ciao Carlo,
no, non salvo files...User controll non l'ho mai usato ma da quel che leggo potrebbe essere una soluzione.
Ps non vedo allegati...o magari non so dove vederli

Rispondo a "nessuno"... una parte di codice non è possibile.sono un po di pagine,e semplificarlo idem.La struttura è complessa.

PM Quote
Avatar
Carlo (Member)
Guru


Messaggi: 1344
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 1:04
Mercoledì, 04/03/2020
Testo quotato

Postato originariamente da iz1kbp:
no, non salvo files...


appunto, ripeto che se non salvi un file non puoi fare quello che dici, almeno con conoscenze base di programmazione.

Testo quotato

Postato originariamente da iz1kbp:
Ps non vedo allegati...o magari non so dove vederli


è subito sotto al mio post e sopra alla digitura "in programmazione tutto è permesso" , c'è scritto "Carlo ha allegato un files" con l'icona dell'archivio....

Lo riallego ci sono anche i buttons indicizzati....


Carlo ha allegato un file: PiuFormUserControl.zip (50379 bytes)
Clicca qui per scaricare il file

Ultima modifica effettuata da Carlo il 04/03/2020 alle 1:06


in programmazione tutto è permesso
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo