Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Aiuto ad un pivello vb

  1. #1

    Aiuto ad un pivello vb

    Ciao a tutti

    Sto iniziando a provare la programmazione con vb6 e cominciano i problemi.
    Ho inserito in un form un controllo Monthview e nello stesso form ho inserito anche due label.
    In pratica ho un database Access con fra gli altri due campi che sono:

    Giorno | Frase

    Io volevo riuscire a collegarli alle label e quando si apriva in form se l'utente cliccava su una data del controllo calendario si dovevano aggiornare le due label riportandomi i dati esatti.
    Da buon pivello che sono ho provato ad inserire dataenvironment poi una connect e ho creato una sql ma ho visto che non si possono inserire delle variabili in un campo dopo la where.

    Come faccio ??
    Vi prego datemi un mano in modo che io possa cominciare a capire questo bellissimo linguaggio.

    Domanda. Sapete consigliarmi un libro in italiano con istruzioni passo a passo per imparare il vb in qunato io lo sto imparando leggendo qua e la sua internet. Vorrei trovare un libro che mentre ti spiega un pò di teoria ti faccia realizzare anche dei progetti pratici in quanto sbagliando si impara.

    Mi sono reso conto che ho scritto un poema e mi scuso.

    Ciao a Tutti

    enrico

  2. #2
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    fai questo

    Private Sub MON_Data_DateClick(ByVal DateClicked As Date)

    Me.out_Data = Format(DateClicked, "dd,mm,yyyy")
    Unload Me
    Exit Sub

    End Sub

    out_data è la label

  3. #3
    Ciao

    In questo modo ho nella label il valore della data del controllo calendario ma non so come passare questo valore al Dataenvironment oppure ad un controllo data per fare in modo che compaiano nelle altre label i dati ricercati.
    Ho provato con delle sql mettendo nella where qualcosa come:

    select giorno, frase from calendario where giorno = "una variabile"

    Ma non funziona

    Ora proverò ad inserire out_data ma .....

    Aspetto altri consigli e ti ringrazio

    Ciao
    Enrico

  4. #4
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    Apri il DB in questo modo

    Set DB = OpenDatabase("c:\perc\MIODB.mdb", False, False)
    Set DAT = DB.OpenRecordset("tabella")
    DAT.Index = "campo_data"

    dopo aver ovviamente dikiarato DB as Database e DAT as Recordset
    tabella è ovviamente il nome della tabella del DB in ogetto e "campo_data" deve essere l'indice del campo in cui si trovano le date.

    ora devi solo fare la ricerka

    DAT.seek"=",nomelabel.caption '(meglio se il val.sta in una variabile)
    altralabel.caption = DAT!frase 'frase è il campo del DB con le frasi

    Ora nella tua altralabel hai la frase corrispondente alla data ke hai cercato.
    Ma dimmi na cosa.... EnricoMed....significa per caso ke stai all'ITIS Enrico Medi????
    Ciao

  5. #5
    Ciao

    Sto provando e fra un pò ti scrivo come è andata.

    Enricomed sta per Enrico quel pazzo che si è messo a studiare medicina ed ha quasi finito (finito 6 anno laurea fra circa 10 mesi)

    Per ora ti ringrazio

    enrico

  6. #6
    Ancora una cosa magari molto stupida ma sto iniziando e abbi pazienza.

    Il codice che mi hai scritto in che sezione del form lo metto

    Nel Form_load oppure nella generale ??

    Grazie

  7. #7
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    puoi mettere la parte di apertura del DB nel form load e quella di ricerca (xxx.seek ecc. ecc.) devi subordinarla ad un evento, ad esempio la pressione di un pulsante o qualkosa.....deve comunque avvenire dopo ke passi il dato del calendario alla label o alla variabile

  8. #8
    Ho messo la ricerca in un pulsante di comando ma mi da un errore
    dopo che ho cliccato una seconda volta

    L'errore è necessario oggetto.
    Se ho capito (ne dubito) forse gli manca l'indice ?

    Vi posto il codice cosi mi dite dove sbaglio

    Private Sub Form_Load()
    Dim db As Database
    Dim DAT As Recordset
    Set db = OpenDatabase("D:\progetti vb6\orache passa 2\orachepassa1.mdb", False, False)
    Set DAT = db.OpenRecordset("calendario")
    End Sub

    Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
    Me.out_Data = Format(DateClicked, "dd/mm/yyyy")
    End Sub

    Private Sub vediVerso_Click()
    DAT.Index = "IndGiorno"
    DAT.Seek "=", out_Data.Caption
    Label3.Caption = DAT!versetto
    End Sub

    Dove è l'errore ?

    Ciao

  9. #9
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    intanto dikiara le variabili prima del form load..in pratica metti le dikiarazioni come prima cosa all'inizio della pagina del codice e metti DAT.index = .... nel form load insieme all'aperture del DB
    cambia poko ma è + correto così....
    per quanto riguada l'errore il problema sta nel DB.
    aprilo con acces vai in visualizza ---> struttura
    e poi di nuovo visualizza---->indici
    se nella colonna "nome campo" non c'è il campo in cui fai la ricerca (quello della data per capirci) premi TastoDestro del mouse--> aggiungi riga
    dai un nome al nuovo indice e collegalo nel colonna "campo" al campo ke ti interessa scorrendo il menù a tendina.

    a questo salva e nel programma specifica come DAT.index l'indice ke hai appensa creato.
    Penso sia superfluo dirtelo ma ricordati ke VB funziona solo kon DB fatti con access97 (almeno il 6 ke ho io)

    Ciao

  10. #10
    Ho fatto come mi hai detto ed ho convertito il db in access 97 è

    FUNZIONA

    L'unico problema che non capisco è come mai devo cliccare due volte per vedere la frase ?

    Se hai ancora voglia prova a spiegarmi se no comunque ti ringrazio di cuore.

    Sei grande s|n3

    Ciao
    Enrico

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.