Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Attenti a Poco F7: può essere il best buy del 2025. Recensione
Attenti a Poco F7: può essere il best buy del 2025. Recensione
Poco F7 5G, smartphone che punta molto sulle prestazioni grazie al processore Snapdragon 8s Gen 4 e a un display AMOLED da ben 6,83 pollici. La casa cinese mantiene la tradizione della serie F offrendo specifiche tecniche di alto livello a un prezzo competitivo, con una batteria generosissima da 6500 mAh e ricarica rapida a 90W che possono fare la differenza per gli utenti più esigenti.
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Abbiamo provato per molti giorni il nuovo Z Fold7 di Samsung, un prodotto davvero interessante e costruito nei minimi dettagli. Rispetto al predecessore, cambiano parecchie cose, facendo un salto generazionale importante. Sarà lui il pieghevole di riferimento? Ecco la nostra recensione completa.
The Edge of Fate è Destiny 2.5. E questo è un problema
The Edge of Fate è Destiny 2.5. E questo è un problema
Bungie riesce a costruire una delle campagne più coinvolgenti della serie e introduce cambiamenti profondi al sistema di gioco, tra nuove stat e tier dell’equipaggiamento. Ma con risorse limitate e scelte discutibili, il vero salto evolutivo resta solo un’occasione mancata
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-04-2008, 17:23   #1
OrcaAssassina
Senior Member
 
Iscritto dal: Feb 2003
Messaggi: 2805
[VB.NET] Creare un software multilingua

Devo creare un programma multilingua

Cosa mi consigliate??

Avevo pensato questo:

In apertura del programma faccio selezionare la lingua a cui associo un valore.

Ad esempio:

1 - Italiano
2 - Inglese
3 - Spagnolo

Questo valore, non che una costante, la vado a controllare ogni volta che apro una form.

A questo punto in base alla constante vado a modificare il TEXT della label.

E' un metodo corretto o no???

Voi come fate???

Ciao e grazieeeeeeee
__________________
AMD 3700x --- ASUS X570 CROSSHEAR VIII HERO --- 4x 8GB Corsair Vengeance RGB PRO 3600 MHz --- SSD: Samsung 980Pro 1TBb --- EVGA RTX 2070 SUPER
OrcaAssassina è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 20:28   #2
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
potresti mantenere le traduzioni su diversi file,quindi utilizzare quello corrispondente!
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 20:43   #3
OrcaAssassina
Senior Member
 
Iscritto dal: Feb 2003
Messaggi: 2805
ok

Quote:
Originariamente inviato da nuovoUtente86 Guarda i messaggi
potresti mantenere le traduzioni su diversi file,quindi utilizzare quello corrispondente!

Quindi dici con file esterni????
__________________
AMD 3700x --- ASUS X570 CROSSHEAR VIII HERO --- 4x 8GB Corsair Vengeance RGB PRO 3600 MHz --- SSD: Samsung 980Pro 1TBb --- EVGA RTX 2070 SUPER
OrcaAssassina è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 22:06   #4
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
be si, non mi sembra sia il caso di mantenere tutte le traduzioni sul sorgente..Inoltre in questo modo puoi espandere il range delle lingue o modificare le scritte di quelle attuali!
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 22:34   #5
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Il .net ha gia' il supporto completo per la globalization.
Apri la form, scegli la lingua tra le proprieta' della form, quando sei ancora in modalita' progettazione.
Metti tutti i campi che ti servono.

Poi cambi lingua, e cambi di conseguenza anche tutte le label, come ti servono nella lingua nuova.

Ripeti per tutte le lingue che ti interessano.

Quando l'utente aprira' la form, si trovera' direttamente i campi nella lingua da lui impostata sulla macchina (in realta' sulla base della lingua scelta dall'utente in quel momento "loggato" sulla macchina)

Il tutto si puo' anche fare direttamente su un file XML, che verra' associato esattamente come se avessi fatto i passi precedenti, se volessi scegliere questa strada.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 23:02   #6
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Il .net ha gia' il supporto completo per la globalization.
Apri la form, scegli la lingua tra le proprieta' della form, quando sei ancora in modalita' progettazione.
Metti tutti i campi che ti servono.

Poi cambi lingua, e cambi di conseguenza anche tutte le label, come ti servono nella lingua nuova.

Ripeti per tutte le lingue che ti interessano.

Quando l'utente aprira' la form, si trovera' direttamente i campi nella lingua da lui impostata sulla macchina (in realta' sulla base della lingua scelta dall'utente in quel momento "loggato" sulla macchina)

Il tutto si puo' anche fare direttamente su un file XML, che verra' associato esattamente come se avessi fatto i passi precedenti, se volessi scegliere questa strada.
come avviene per la specifica web in pratica!Però da quello che ho inteso dalle sue parole la scelta piu che dalla piattoforma dovrebbe essere fatta dall'utente!
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 23:21   #7
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da nuovoUtente86 Guarda i messaggi
come avviene per la specifica web in pratica!Però da quello che ho inteso dalle sue parole la scelta piu che dalla piattoforma dovrebbe essere fatta dall'utente!
Ma la scelta e' fatta dall'utente.
E' la lingua da lui scelta in fase di installazione del sistema operativo,
oppure cambiata successivamente dalle scelte delle opzioni internazionali di globalizzazione sul pannello di controllo.

Solo non mi rompe le wallas di nuovo chiedendolo.


Comunque se si vuole si possono bypassare.
Si puo' in fase di installazione far scegliere all'utente una delle lingue per le quali si e' customizzata l'interfaccia, e poi si puo' cambiare al volo la globalizzazione, volendo (ovviamente si vuole) anche solo nell'istanza del programma, ogni volta che verra' aperto.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 23:28   #8
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
Ecco non sapevo appunto se fosse possibile rendere indipendente la globalizzazione offerta dal framework con possibilità da parte dell' utente in fase di setup o utilizzo.Da quello che ho capito si puo in qualche modo fare!



O.T. Nella discussione sulle basi di dati, ho aggiunto un passo del libro riguardante quell' argomento! Fine OT!
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 11-04-2008, 23:47   #9
amedeoviscido
Senior Member
 
Iscritto dal: May 2005
Città: Napoli - Fuorigrotta
Messaggi: 471
La soluzione che ti è stata proposta è la più efficace per mantenere il controllo totale su quello che c'è scritto nel tuo programma, ma c'è un ulteriore metodo molto semplice e che ti può permettere di aprire il programma a traduzioni da tutto il mondo, basta che qualche utente del tuo programma sia interessato.

Ti mostro un frammento di codice che puoi utilizzare

Codice:
For Each ctrl As Control In Me.Controls
    MsgBox(ctrl.Text)
Next
Come potrai vedere lanciando questo codice il programma elencherà la lista di tutti i controlli del programma mostrandoti quello che c'è scritto dentro.

Un'altra cosa interessante la puoi fare guardando il tipo di controllo che man mano ti viene dato, come ad esempio:

Codice:
if typeof ctrl is combobox then
    MsgBox "E' una combobox"
else
    if typeof ctrl is listbox then
        msgbox "E' una lista di " + format(ctrl.Items.Count) + " elementi."
    else
        ....
    end if
end if
Adesso sta a te salvare i dati in un file di configurazione. Io ad esempio salvavo in file formattati in questo modo

nomecontrollo:testo
nomecontrollo:testo
...

Da cui caricavo la lingua anche al volo
__________________
Acquisti sul mercatino: grabrihc, LucaXbox360, Yarsha,micanto1,American horizo,Fnac,schumyFast,STECCO,Ezechiele25,17
Vendite sul mercatino: musodatopo,alexbands,mspr,anto.wajo
amedeoviscido è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Attenti a Poco F7: può essere il best buy del 2025. Recensione Attenti a Poco F7: può essere il best buy...
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale Recensione Samsung Galaxy Z Fold7: un grande sal...
The Edge of Fate è Destiny 2.5. E questo è un problema The Edge of Fate è Destiny 2.5. E questo ...
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello Ryzen Threadripper 9980X e 9970X alla prova: AMD...
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale Acer TravelMate P4 14: tanta sostanza per l'uten...
Cooler Master MasterFrame 360 Panorama S...
Motorola e Swarovski lanciano The Brilli...
Wikipedia dichiara guerra all'IA spregiu...
Dai social ai farmaci dimagranti: il nuo...
Addio spam su WhatsApp? Ecco le nuove di...
Su Windows 11 25H2 cambierà (in p...
Per la prima volta un portatile gaming c...
Meta condannata per aver violato la priv...
Hai almeno 16GB di RAM? Ecco il nuovo mo...
Proxmox annuncia Proxmox VE 9.0: Debian ...
IA agentica: i modelli di sicurezza trad...
One UI 8 beta in arrivo su Galaxy S24 e ...
Trimestre record per AMD: le Radeon RX 9...
Furti di auto in aumento: 136 mila veico...
Booking.com nella bufera: class action m...
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: 13:58.


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