Ik heb een prog in VB6 waarmee ik records uit een access 2000 database toevoeg en ophaal. Nu wil ik dat de gebruiker aan het form een foto kan toevoegen en dan per record. Ik doe dit door via een imagebox een foto te laden en dan het pad waar hij die foto vandaan haalt weg te schrijven naar de database dmv van een tekstbox. Nu is het de bedoeling dat als je door die recordset klikt dat dan in runtime de pictureproperty van die imagebox meeverandert, zodat steeds het plaatje verschijnt wat bij dat record hoort. Nu weet ik dat dat door een form_sub kan alleen heb geen idee hoe en hoe die code dan luidt. Iemand een idee?
Verwijderd
Misschien te makkelijk:
Gewoon,
im1.picture = objRs!veldnaam
In die veldnaam gewoon het pad van het plaatje zetten. Moet lukken toch zo?
Gewoon,
im1.picture = objRs!veldnaam
In die veldnaam gewoon het pad van het plaatje zetten. Moet lukken toch zo?
Verwijderd
Je kan het ook netter schrijven:Op maandag 18 maart 2002 18:54 schreef voetenzalf het volgende:
im1.picture = objRs!veldnaam
code:
1
| imgLogo.Picture = rstKlanten.Fields("VeldNaam") |
hierdoor is het veel duidelijker wat je bedoeld. Vooral die ! is IMHO zeer onduidelijk. Bovendien zijn dit pure VB notaties (nog erger zelfs: VBA) die totaal onzinnig zijn, en alleen voor de extreem luie medeprogrammeur...
Toch snap ik twee dingen niet: In dat "veldnaam" staat geen plaatje maar die verwijzing naar (padnaam). Werkt dat dan toch? Bovendien waar zet ik deze event procedure nou in ?? Want dat imageobject zit niet rechtstreeks gekoppeld aan de DB door middel van RecordSource.. Kan je dit iets voor me uitwerken please?
Sorry zo bedoel ik het niet, ik bedoel, koppel je die code aan een Form procedure of aan de recordset_change() procedure of zo? Dat snap ik niet..
daar zit je foutOp dinsdag 19 maart 2002 09:08 schreef EdWare het volgende:
Dat snap ik niet..
maar je kan alles doen wat je wilt en je mag plaatjes met een functie schrijven, of met een module... jij bent de baas
en verder natuurlijk naar de mensen hier luisteren
disjfa - disj·fa (meneer)
disjfa.nl
Oke dat snap ik, ik wil die plaatjes dus met een eventprocedure gaan inlezen, want zoals gezegd die plaatjes zitten niet in de db er zit alleen een verwijzing naar het plaatje in de db en dat per record. Ik heb al dit gevonden:
With me
imgLogo.Picture = rstKlanten.Fields("VeldNaam")
End With
En dit zou dan in de Form_Current() Sub moeten staan alleen dit is een Sub die ik uit Access 2000 heb gehaald en VB6 kent deze Sub niet??
With me
imgLogo.Picture = rstKlanten.Fields("VeldNaam")
End With
En dit zou dan in de Form_Current() Sub moeten staan alleen dit is een Sub die ik uit Access 2000 heb gehaald en VB6 kent deze Sub niet??
Op maandag 18 maart 2002 19:20 schreef KoenM het volgende:
Je kan het ook netter schrijven:
code:
1imgLogo.Picture = rstKlanten.Fields("VeldNaam")
hierdoor is het veel duidelijker wat je bedoeld. Vooral die ! is IMHO zeer onduidelijk. Bovendien zijn dit pure VB notaties (nog erger zelfs: VBA) die totaal onzinnig zijn, en alleen voor de extreem luie medeprogrammeur...
offtopic:
Heeft te maken met default properties
rs.Fields("veld").value
=
rs.Fields("veld")
=
rs("veld") of rs!veld
En zelf gebruik ik altijd de hidden
rs.Collect("veld")
Die is sneller dan de andere manieren...
Maar da's wel offtopic...
Heeft te maken met default properties
rs.Fields("veld").value
=
rs.Fields("veld")
=
rs("veld") of rs!veld
En zelf gebruik ik altijd de hidden
rs.Collect("veld")
Die is sneller dan de andere manieren...
Maar da's wel offtopic...
Exact expert nodig?
Ik snap er niks van. Waarom is dat nou zo ingewikkeld in VB. Ik wil gewoon een plaatje laten veranderen. Kan ik die wissel procedure niet plaatsen in de recordset_change() procedure, zou hij het dan doen?
Volgens mij kun je helemaal niet
pictureboxje.Picture = rs.Collect("picture_in_db")
doen. Staat me iets van bij dat dat met getChunk moet maar tis alweer een eeuwigheid geleden dat ik dat nodig had. Kijk even in je favoriete ado reference guide bij de GetChunk method. Ik dacht dat je daarmee de binaire data kan uitlezen uit je db, die moet je in een filetje wegschrijven, en dan kun je het plaatje laden in je picturebox (hoewel misschien dat wegschrijven niet nodig is).
Sorry ben ff errug lui
anders had ik wel ff de help erbij gepakt.
pictureboxje.Picture = rs.Collect("picture_in_db")
doen. Staat me iets van bij dat dat met getChunk moet maar tis alweer een eeuwigheid geleden dat ik dat nodig had. Kijk even in je favoriete ado reference guide bij de GetChunk method. Ik dacht dat je daarmee de binaire data kan uitlezen uit je db, die moet je in een filetje wegschrijven, en dan kun je het plaatje laden in je picturebox (hoewel misschien dat wegschrijven niet nodig is).
Sorry ben ff errug lui
Exact expert nodig?
Ik heb nu het volgende gedaan: In de procedure Recordset_WillMove() staat het volgende: Image1.Picture = Loadpicture (Text1.Text) waarbij in Text1.Text het pad staat waar het plaatje vandaan gehaalt moet worden. Maar nu komt het probleem, hij kijkt naar dit pas naar dit pad bij klikken op de recordset. Gevolg: Het plaatje loopt steeds een record achter ten opzichte van de database. Hoe maak ik dit nou zo dat hij het pad pakt wat verschijnt na klikken en niet het pad wat er stond voor klikken zodat de plaatjes weer synchroon lopen??
Snel 1 recordset naar voren gaan, plaatje laden, rest overslaan (niets laten zien), en dan weer terug?
Snap niet precies hoe het kan met je plaatje...
Snap niet precies hoe het kan met je plaatje...
Issie van plan dus, maar heeft ie nog niet gedaan.Op woensdag 20 maart 2002 17:10 schreef EdWare het volgende:
recordset_WillMove()
Is er niet een HasJustChanged event?
Exact expert nodig?
Pagina: 1