Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Pannello QD-OLED da 32 pollici con risoluzione 4K, frequenza di aggiornamento a 240Hz e tempi di risposta rapidissimi: il Gigabyte MO32U24 evolve il progetto del suo predecessore MO32U e alza ulteriormente l'asticella delle prestazioni. È ancora una volta un monitor indirizzato ai giocatori più esigenti
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
realme 16 5G è un nuovo smartphone con sensore Sony IMX 852 da 50MP sul retro e uno specchio selfie fisico integrato nella camera bar, una prima nel segmento di mercato. Batteria da 6550mAh in un corpo da 8,1mm e 183g, certificazione IP69K e ricarica da 45W completano un pacchetto aggressivo per la fascia media, per uno dei prodotti più interessanti del produttore sul piano commerciale
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Sono ormai definitive le nuove norme del Codice della Strada per i monopattini elettrici. Non solo targa e assicurazione, le regole sono tante e riguardano diversi aspetti, vi spieghiamo come evitare sanzioni che possono essere salate
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-02-2009, 15:29   #1
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
[Visual Basic 2008] Combobox & database...

Ciao a tutti...

Sto cercando di creare un assemblatore virtuale di pc (tipo quello che c'è sul sito di gigapc, per intenderci..) in visual basic...

Ora ho creato un form in cui l'utente può scegliere un processore tra quelli presenti sul database... E ho inserito un combobox in cui dovrebbe uscire la lista dei processori (anche dopo delle query sql..)..

MA qui sorge il problema.... Come farlo?? Che codice devo mettere per aggiungere gli item???

Il mio codice --->

Codice:
Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged

        PictureBox1.ImageLocation = "C:\Documents and Settings\Ale\Documenti\ALE\PC\PROGRAMMAZIONE\pc assembler\PC ASSEMBLER\PC ASSEMBLER\images\intel.jpg"

        ComboBox1.Items.Add(Me.ProcessoriTableAdapter.querymarcaprocintel(Me.ComponentiDataSet.processori))

    End Sub
---> NON FUNZIONA

Radiobutton1 è un radiobutton con cui l'utente sceglie di vedere solo processori intel.

querymarcaprocintel è una query che restituisce i nomi dei modelli di processori di marca intel...

VI PREGO HELP ME

grazie..
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2009, 17:51   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
querymarcaprocintel è una query che restituisce i nomi dei modelli di processori di marca intel...
ComboBox1.Items.Add() è il metodo giusto. Il problema sta evidentemente in tutto quello che segue.

Esattamente cosa dovrebbe restituire ( intendo, il tipo di dato... ) quella roba che dai in pasto al ComboBox1.Items.Add ?
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2009, 17:56   #3
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Una stringa... una combinazione di numeri e lettere....

ALTRE INFO:

nome database: componenti
nome tabella: processori

query sql:
SELECT modello
FROM processori
WHERE marca= N'intel' ------> questa sono sicurissimo ke funge
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2009, 21:26   #4
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Una stringa... una combinazione di numeri e lettere....
Avesse restituito un array di stringhe l'avrei capito ( con la Combo caricavi l'array in un colpo solo... )
Se restituisce una stringa allora in quella Combo avrai sempre e solo un elemento.
Non entro nel merito del tuo progetto, perchè non potendolo vedere sarebbe cmq inutile, ma non era (molto) più semplice via codice con un semplice DataReader ?
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2009, 23:09   #5
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Se restituisce un array usa ComboBox1.Items.AddRange.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2009, 09:01   #6
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Avesse restituito un array di stringhe l'avrei capito ( con la Combo caricavi l'array in un colpo solo... )
Se restituisce una stringa allora in quella Combo avrai sempre e solo un elemento.
Non entro nel merito del tuo progetto, perchè non potendolo vedere sarebbe cmq inutile, ma non era (molto) più semplice via codice con un semplice DataReader ?
Eh??? cos'è un datareader?? Scusa ma non sono molto ferrato
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2009, 09:09   #7
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Se restituisce un array usa ComboBox1.Items.AddRange.
Usando questo mi da errore "Impossibile convertirer il valore di tipo 'Integer' a 'Matrice in 1 dimensioni di Object'" <---- ???

EDIT:

ho provato anche così:
Quote:
Dim arr
arr = New ArrayList(Me.ProcessoriTableAdapter.querymarcaprocintel(Me.ComponentiDataSet.processori))
ComboBox1.Items.AddRange(arr)
ma mi da 3 righe di errore "risoluzione dell'overload non riuscito perchè nessun 'new' accessibile può essere chiamato senza una conversione verso un tipo di dati più piccolo [......]"
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]

Ultima modifica di ale09hh : 24-02-2009 alle 09:19.
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2009, 09:55   #8
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Per forza. Se avevi detto che ritorna una stringa, non puoi usare .AddRange .

Il concetto del DataReader ( esempio su DB Access ) è il seguente :

Codice:
        Dim CN As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & percorsoDB & nomeDB & ";Persist Security Info=False")
        Dim strSql As String = "SELECT * FROM Tabella WHERE condizioni..."
        Dim CMD As New OleDb.OleDbCommand(strSql, CN)
        CN.Open()
        Dim RDR As OleDb.OleDbDataReader = CMD.ExecuteReader()
        While (RDR.Read())
	ComboBox1.Items.Add(RDR("nomeCampo")) 
        End While
        RDR.Close()
        CN.Close()
10 righe di codice e nessun utilizzo di componenti definiti a design.
E il gioco è fatto.

Chiaramente se hai N Combo, puoi parametrizzarla ( ne fai una Function che riceve in ingresso la SELECT e ti ritorna un DataReader... ).
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2009, 11:53   #9
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Grazie Marcogg... Ma non funziona... non riesce ad aprire il database... mi dice che non lo trova , ma ho controllato 100 volte il percorso ed è giusto...


Ora succede una cosa strana..

Con questo codice -->
Codice:
ComboBox3.Items.Add(Me.ProcessoriTableAdapter1.Fill(Me.ComponentiDataSet1.processori))
Mi inserisce il numero di righe presenti nel database!! Boh

la query che ho usato è Fill--> SELECT modello FROM processori...

Ho inserito due modelli per cui nel combobox mi inserisce semplicemente "2"...
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2009, 17:16   #10
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Grazie Marcogg... Ma non funziona... non riesce ad aprire il database... mi dice che non lo trova , ma ho controllato 100 volte il percorso ed è giusto...
percorsoDB deve essere il percorso completo e deve finire con la back-slash "\". Es.: "C:\cartellaDB\"
nomeDB deve essere il nome secco, senza percorso, ossia ad es.: "nomeDB.mdb".
E vedrai che funziona .

Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Ora succede una cosa strana..

Con questo codice -->
Codice:
ComboBox3.Items.Add(Me.ProcessoriTableAdapter1.Fill(Me.ComponentiDataSet1.processori))
Mi inserisce il numero di righe presenti nel database!! Boh

la query che ho usato è Fill--> SELECT modello FROM processori...

Ho inserito due modelli per cui nel combobox mi inserisce semplicemente "2"...
Ecco, io quel sistema lì lo butterei proprio...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2009, 19:29   #11
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Ma se il database è in formato .sdf (quello creato direttamente con visual basic) cambia qualcosa?
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 08:25   #12
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Ma se il database è in formato .sdf (quello creato direttamente con visual basic) cambia qualcosa?
Eh, direi di sì. Potevi dirlo prima che usi .sdf .
Cmq, l'esempio per Access è molto simile anche nel caso del Db .sdf.

Per la stringa di connessione ti rimando qui :
http://www.connectionstrings.com/sql-server-2005-ce

Per il resto prova prima con gli oggetti OleDb ( ho il sospetto che possa funzionare lo stesso ), poi con Sql ( SqlConnection, SqlCommand ecc... ) o SqlCe ...
La struttura del codice e l'utilizzo del DataReader non cambiano in ogni caso.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 09:01   #13
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Mi sa che non funziona perchè mi dice "Formato di database [...]\componenti.sdf' non riconosciuto.".....
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 09:09   #14
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Mi sa che non funziona perchè mi dice "Formato di database [...]\componenti.sdf' non riconosciuto.".....
Usa le classi Sql.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 10:09   #15
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Ho provato con questo codice:

Codice:
Dim conn As New SqlClient.SqlConnection("Data Source = componenti.sdf; Persist Security Info=False;")
        Dim sqlQ As String = "SELECT modello FROM processori"
        Dim command As New SqlClient.SqlCommand(sqlQ, conn)
        conn.Open()
        Dim reader As SqlClient.SqlDataReader = command.ExecuteReader()
        While (reader.Read())
            ComboBox3.Items.Add(reader("modello"))
        End While
        reader.Close()
        conn.Close()
Non mi da errori ma il debug si blocca e non fa niente..

Cmq grazie 6 gentilissimo a rispondermi
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 12:00   #16
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Prova con gli oggetti dello SpaceName System.Data.SqlServerCe.
Se dovesse fallire anche lì, mi sa che il tuo DB ha qualche problema...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2009, 18:56   #17
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Graziee funzionaaa!!!!
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2009, 07:57   #18
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ale09hh Guarda i messaggi
Graziee funzionaaa!!!!
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2009, 14:13   #19
ale09hh
Senior Member
 
L'Avatar di ale09hh
 
Iscritto dal: Jan 2008
Messaggi: 430
Ho notato una cosa: se definisco sqlQ direttamente come una stringa (esempio "SELECT modello FROM processori" il codice funziona perfettamente...

Se però inserisco una variabie mi da errore "l'identificatore non può essere una stringa vuota" esempio:
Codice:
sqlQ = "SELECT modello FROM processori WHERE frequenza >=" & textbox1.text & " AND frequenza <=" & textbox2.text & """"
WHY??

PS: le quattro virgolette alla fine vengono lette come una sola....
__________________
[ Raidmax Ninja | Intel [email protected] Ghz | Arctic Cooling Freezer 7 Pro | Asus P5K-E WiFi-AP | 6GB Corsair 800Mhz | XFX HD5770XT | 2xWestern Digital 320GB Raid0 | Pioneer DVR-215D | LG L222WS ]
ale09hh è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2009, 16:54   #20
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Il problema sono proprio quelle quattro doppie virgolette, alla fine.
& """"
A che servono ? Eliminale.
Ti ritrovi una doppia virgola alla fine della SELECT. Ovvio che non la interpreta correttamente.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh Recensione realme 16 5G: lo smartphone con Selfi...
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Samsung Galaxy A27 5G è ufficiale...
TCL aggiorna la sua gamma di monitor per...
Anche OPPO avrà uno smartphone co...
La Radeon RX 9070 XT appare su Steam e m...
L'America si ribella ai datacenter: bloc...
'Artificial General Engineer': l'IA di J...
Il drone NASA Dragonfly, che voler&agrav...
Stop immediato a Fable 5 e Mythos 5: il ...
"Prime Day Amazon il 23-26 giugno": sì e...
Oggi 2 super MacBook Pro M5 e M5 Pro, 24...
Tineco Floor One Station S9 Artist: il s...
Raggiunte nuove altitudine e velocit&agr...
Apple Watch Series 11 GPS a 339€ su Amaz...
Come un MacBook, ma con la RTX 5070: MSI...
Paolo Zaccardi: "Smettere di assume...
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: 17:50.


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