Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla
DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla
DJI ha appena ufficializzato la serie Lito, la sua nuova gamma di droni entry-level destinata a chi si avvicina per la prima volta alla fotografia aerea. Al centro dell'annuncio ci sono due modelli ben distinti per fascia di prezzo e specifiche tecniche: DJI Lito 1 e DJI Lito X1. Entrambi si collocano sotto la soglia regolamentare dei 249 grammi, che permette di volare con requisiti burocratici più semplici rispetto ai droni più pesanti.
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi
Siamo stati a Londra per la premiazione dei Sony World Photography Awards 2026, l'evento a tema fotografia più prestigioso. Fra sorprese e novità, ne approfittiamo per fare il punto sulla fotografia contemporanea, in cui la didascalia è sempre più necessaria a cogliere il senso della quasi totalità degli scatti.
Una settimana con Hyundai Ioniq 5 N-Line: diverte e convince
Una settimana con Hyundai Ioniq 5 N-Line: diverte e convince
L'elettrica di casa Hyundai propone una versione AWD con estetica derivata dalla famiglia N. L'abbiamo provata per diversi giorni, per scoprire tutti i dettagli e la vera autonomia in autostrada
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-08-2008, 14:00   #1
FedericoT
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 7
[C#] Progettazione seconda form

Salve a tutti.
Sto sviluppando una piccola applicazione in C# utilizzando lo strumento Microsoft Visual C# 2005 Express Edition.
Cliccando su un pulsante ho fatto in modo di aprire una nuova form utilizzando questo codice:
Form form2 = new Form();
form2.Show();
A questo punto vorrei passare alla progettazione visuale in questa form, ma non so come fare. Qualcuno può aiutarmi?
Inoltre vorrei fare in modo che finchè la form2 è aperta, la form1 mi resti in secondo piano ma non sia utilizzabile.

Grazie anticipatamente.
FedericoT è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 14:10   #2
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Quote:
Originariamente inviato da FedericoT Guarda i messaggi
Inoltre vorrei fare in modo che finchè la form2 è aperta, la form1 mi resti in secondo piano ma non sia utilizzabile.
Per far ciò basta semplicemente che la form2 sia modale, ovvero invece di fare
form2.Show(), fai form2.ShowDialog() e il gioco è fatto.

Per la seconda domanda, non riesco a capire bene il problema , cmq, invece di aggiungere direttamente queste due righe,

Form form2 = new Form();
form2.Show();

potresti andare nel tuo solution explorer e cliccare sul progetto con il destro. A questo punto, scegliendo Add, selezioni Windows Form cosi lui ti crea il file form con il designer già integrato e modificabile.

A quel punto, all'interno dell'evento click del bottone, scrivi semplicemente new nomeform().ShowDialog();

avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 15:00   #3
FedericoT
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 7
Quote:
Originariamente inviato da avastreg Guarda i messaggi
Per far ciò basta semplicemente che la form2 sia modale, ovvero invece di fare
form2.Show(), fai form2.ShowDialog() e il gioco è fatto.

Per la seconda domanda, non riesco a capire bene il problema , cmq, invece di aggiungere direttamente queste due righe,

Form form2 = new Form();
form2.Show();

potresti andare nel tuo solution explorer e cliccare sul progetto con il destro. A questo punto, scegliendo Add, selezioni Windows Form cosi lui ti crea il file form con il designer già integrato e modificabile.

A quel punto, all'interno dell'evento click del bottone, scrivi semplicemente new nomeform().ShowDialog();

Grazie mille mi hai risolto il problema. Scusa ma siccome sono alle prime armi faccio domande un po' ingenue.
FedericoT è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 15:42   #4
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Quote:
Originariamente inviato da FedericoT Guarda i messaggi
Grazie mille mi hai risolto il problema. Scusa ma siccome sono alle prime armi faccio domande un po' ingenue.
ci mancherebbe ci passiamo tutti e fai bene a chiedere prima di diventare matto, è un attimo rispondere
avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 15:54   #5
FedericoT
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 7
Quote:
Originariamente inviato da avastreg Guarda i messaggi
ci mancherebbe ci passiamo tutti e fai bene a chiedere prima di diventare matto, è un attimo rispondere
Dopo aver creato la form con il comando new nomeform().ShowDialog() dentro all'evento di click di un pulsante, dovrei passare alla nuova form delle variabili che ho valorizzato nella prima form, solo che non me le riconosce.
Io le avevo inizializzate dentro alla classe della prima form.
Non so se devo inizializzarle da qualche altra parte o devo passarle alla seconda form quando la creo.

Grazie.
FedericoT è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 16:11   #6
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Quote:
Originariamente inviato da FedericoT Guarda i messaggi
Dopo aver creato la form con il comando new nomeform().ShowDialog() dentro all'evento di click di un pulsante, dovrei passare alla nuova form delle variabili che ho valorizzato nella prima form, solo che non me le riconosce.
Io le avevo inizializzate dentro alla classe della prima form.
Non so se devo inizializzarle da qualche altra parte o devo passarle alla seconda form quando la creo.

Grazie.
se ho capito bene, basta che le passi nel costruttore della seconda form.
avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 16:52   #7
FedericoT
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 7
Quote:
Originariamente inviato da avastreg Guarda i messaggi
se ho capito bene, basta che le passi nel costruttore della seconda form.
Scusa ma mi potresti fare un esempio perchè non riesco a capire come fare.
Ho provato in questo modo:
Nella form1 nell'evento di click del pulsante scrivo
new form2().ShowDialog(variabile1,variabile2,variabile3,.....);
Mentre nella form2 scrivo
public form2(variabile1,variabile2,variabile3,...)
{
InitializeComponent();
}

Dove sbaglio?
Grazie
FedericoT è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 17:48   #8
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Quote:
Originariamente inviato da FedericoT Guarda i messaggi
Scusa ma mi potresti fare un esempio perchè non riesco a capire come fare.
Ho provato in questo modo:
Nella form1 nell'evento di click del pulsante scrivo
new form2().ShowDialog(variabile1,variabile2,variabile3,.....);
Mentre nella form2 scrivo
public form2(variabile1,variabile2,variabile3,...)
{
InitializeComponent();
}

Dove sbaglio?
Grazie
quasi, pero' non devi passarle alla ShowDialog(), che è semplicemente un metodo, ma al costruttore del form2.

Quindi, a livello di codice, diventa cosi:
Codice:
new form2(variabile1,variabile2,variabile3,.....).ShowDialog();
il new serve appunto a richiamare il costruttore dell'oggetto, che è quello che hai scritto tu in modo corretto:

Codice:
public form2(variabile1,variabile2,variabile3,...)
{
      InitializeComponent();
}
avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 18:07   #9
FedericoT
Junior Member
 
Iscritto dal: Aug 2008
Messaggi: 7
Quote:
Originariamente inviato da avastreg Guarda i messaggi
quasi, pero' non devi passarle alla ShowDialog(), che è semplicemente un metodo, ma al costruttore del form2.

Quindi, a livello di codice, diventa cosi:
Codice:
new form2(variabile1,variabile2,variabile3,.....).ShowDialog();
il new serve appunto a richiamare il costruttore dell'oggetto, che è quello che hai scritto tu in modo corretto:

Codice:
public form2(variabile1,variabile2,variabile3,...)
{
      InitializeComponent();
}
Ok ho fatto come mi hai consigliato ed in effetti le variabili me le riconosce, ma solo all'interno del metodo costruttore della form2.
Ora come faccio a farmele riconoscere in tutta la form?
Devo dichiarare una nuova variabile nella classe della form2 ed estrarmi la variabile dal metodo costruttore?
Se si qual'è la sintassi?
Grazie

Ultima modifica di FedericoT : 13-08-2008 alle 18:20.
FedericoT è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 18:23   #10
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
dichiarale al di fuori del costruttore (ma sempre all'interno della classe).

Codice:
public class someClass {

private int someVar1;
private List<string> someVar2;
    
    public someClass ( int someVar1, List<string>  someVar2) {
    this.someVar1 = someVar1; //assegno la someVar1 (passata) alla proprietà someVar1 di questo oggetto
    this.someVar2 = someVar2;
}
someVar1 e someVar2 dopo le puoi usare anche fuori dal costruttore.
avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 20-08-2008, 10:44   #11
muntagna76
Junior Member
 
Iscritto dal: Jul 2008
Messaggi: 8
button_click

Cia, non sò se sia la discussione giusta..cmq ci provo.
Sto realizzando un semplice programma in c# ho già creato il database e tutte le varie cose(tabelle relazioni ecc..)
Ho inserito le form, 1 principale nella quale metto i pulsanti per aprire le altre form(già disegnate)
clicco sul button (a cui ho già dato nome e label) il codice per aprire una form
è nel mio caso

Ordini.showdialog() domanda?

la form ordini è stata creata ed i nomi coincidono dove sbaglio? sò che è una domanda stupida ma sono fermi in ste xxxxx!!
grazie per la collaborazione

compilando mi dà l'errore:

Errore 2 Occorre un riferimento a un oggetto per la proprietà, il metodo o il campo non statico 'System.Windows.Forms.Form.ShowDialog(System.Windows.Forms.IWin32Window)' C:\Documents and Settings\Davide\Documenti\Visual Studio 2008\Projects\ordini clienti\ordini clienti\Principale.cs 26 13 ordini clienti

Ultima modifica di muntagna76 : 20-08-2008 alle 10:48. Motivo: integrazione errore
muntagna76 è offline   Rispondi citando il messaggio o parte di esso
Old 20-08-2008, 10:56   #12
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Quote:
Originariamente inviato da muntagna76 Guarda i messaggi
Ordini.showdialog() domanda?
un po' criptico, provo a vedere se riesco ad aiutarti

non Ordini.showDialog();

poichè Ordini non è un form statico.

Cliccando sul bottone tu desideri creare quel form e aprirlo, perciò lo devi instanziare (all'interno dell'evento click del bottone).

Quindi, le alternative (due delle migliaia) sono:

Codice:
new Ordini().showDialog();
oppure

Codice:
Ordini tuavariabileordini = new Ordini();

tuavariabileordini.showDialog();
se ti serve gestisterlo è meglio l'ultima, se è una botta e via è meglio la prima.
avastreg è offline   Rispondi citando il messaggio o parte di esso
Old 20-08-2008, 11:05   #13
muntagna76
Junior Member
 
Iscritto dal: Jul 2008
Messaggi: 8
Grazie ci provo e poi ti faccio sapere..
muntagna76 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI Lito 1 e Lito X1 recensione: i nuovi droni per principianti che non si fanno mancare nulla DJI Lito 1 e Lito X1 recensione: i nuovi droni p...
Sony World Photography Awards 2026: i premiati, anche italiani, il punto sulla fotografia di oggi Sony World Photography Awards 2026: i premiati, ...
Una settimana con Hyundai Ioniq 5 N-Line: diverte e convince Una settimana con Hyundai Ioniq 5 N-Line: divert...
Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo Recensione OPPO Find X9 Ultra: è lui il c...
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Xbox Game Pass sarà disponibile a...
La serie HONOR 600 avrà presto un...
Mova Viax 250 in prova: il robot tagliae...
Fat e-bike per tutti: sconti Engwe, pi&u...
Google conferma l'arrivo della nuova ver...
Apple ha trovato il modo per abbassare i...
OpenAI vuole tassare l'AI per dare a tut...
MacBook Air 15'' con chip M4 a 1.199€ su...
Samsung Galaxy S25 Edge 12/512GB a 854€ ...
Super offerta sul portatile gaming Acer ...
Nanotubi di carbonio più conduttivi del ...
LG OLED evo C5 48'' a 614€ e G5 83' a 3....
Ricavi record per Samsung ma la division...
TOP 7 Amazon del weekend: gli sconti al ...
Volvo e Design Week: al Volvo Studio di ...
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: 01:13.


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