Toon posts:

[vb] common dialog > comdlg32.ocx ??

Pagina: 1
Acties:
  • 51 views sinds 30-01-2008

Verwijderd

Topicstarter
Hallo, ik ben samen met een collega een beetje aan het rommelen in visual basic. nou is het de bedoeling dat we door middel van een "browse knop" een file selecteren (filename + pad) die vervolgens ingevoerd wordt in een text veld. nou hebben we dmv. google en de tweaker search al genoeg source code gevonden nou zijn we er min of meer achter dat er een active x control geinstalleerd moet worden om het werkend te krijgen. namelijk de comdlg32.ocx als ik me niet vergis. nou weten wij alleen niet hoe wij deze control kunnen integreren... moeten we dit bestand op een bepaalde locatie opslaan of moeten we deze bekend maken binnen visual basic (6.0) of zitten we er gewoon helemaal naast??? wie kan ons helpen.

alvast bedankt!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 22-08 17:28

alienfruit

the alien you never expected

In visual basic had je altijd een functie waarbij VBX kon toevoegen, zoiets zal er vast ook wel zijn voor OCX/ActiveX. Dan krijg je al het goed is een nieuwe common dialog toolbutton, in je toolpalette.

Maar goed visual basic dat heb ik sinds versie 3 niet meer aangeraakt....

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 22-08 10:45

mulder

ik spuug op het trottoir

Project > Components > Microsoft Common Control

oogjes open, snaveltjes dicht


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Project -> Components -> Microsoft Common Dialog Control

edit:

Damn you Don Facundo... :P


Overigens kan het ook met de API, en dus geen OCX! Zie dit artikel. Dat is IMHO veel mooier...

[ Voor 112% gewijzigd door RobIII op 27-05-2003 15:12 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 09:12

johnwoo

3S-GTE

Er is een vrij gemakkelijke manier om die hele ocx te omzeilen, zodat je weer een dependency minder, en daardoor een gemakkelijkere distributie hebt, en dat is door gewoon zelf de GetOpenFileName en GetSaveFileName API functies aan te roepen. Die commondialog control is gewoon een wrapper rond deze functies, die imho zo makkelijk zelf te gebruiken zijn dat het nogal overkill is om zo'n hele ocx mee te distribueren. Er zijn zat voorbeeldjes met deze API's in VB te vinden.

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
De aangewezen API is denk ik eerder SHBrowseForFolder, met BIF_BROWSEINCLUDEFILES als parameter...

Overigens ben ik het niet helemaal oneens met je...
Meer code (johnwoo's suggestie) vind je hier

De verschillen:

"RobIII methode":
Afbeeldingslocatie: http://www.theforumisdown.com/uploadfiles/0103/api3.gif

"johnwoo methode":
Afbeeldingslocatie: http://www.theforumisdown.com/uploadfiles/0103/api2.gif

[ Voor 101% gewijzigd door RobIII op 27-05-2003 15:27 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
het wordt al wat duidelijker... alleen komen de plaatjes niet over.

hebben jullie mischien een klein stukje voorbeeld source.. hoe de source van de knop er volgens jullie uit moet zien..

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op 27 May 2003 @ 15:28:
het wordt al wat duidelijker... alleen komen de plaatjes niet over.

hebben jullie mischien een klein stukje voorbeeld source.. hoe de source van de knop er volgens jullie uit moet zien..
Ik heb zat voorbeelden gegeven (links naar "kant-en-klare" oplossingen). Vooral die eerste zou ik gewoon eens lezen en proberen...We kauwen niet alles voor.

Mocht je de waarde zoeken voor BIF_BROWSEINCLUDEFILES, die is &H4000

Daar moet je zat aan hebben.

[ Voor 26% gewijzigd door RobIII op 27-05-2003 15:31 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
inderdaad precies wat ik bedoel... alleen wil mijn vb6 die code niet slikken...

Public Const BIF_RETURNONLYFSDIRS = &H1
Public Const BIF_DONTGOBELOWDOMAIN = &H2
Public Const BIF_STATUSTEXT = &H4
Public Const BIF_RETURNFSANCESTORS = &H8
Public Const BIF_BROWSEFORCOMPUTER = &H1000
Public Const BIF_BROWSEFORPRINTER = &H2000
Public Const MAX_PATH = 260

hier gaat het de mist in...

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op 27 mei 2003 @ 15:38:
<knip>
hier gaat het de mist in...
...en onze kristallen bol weet precies wat er fout ging....

Ik doe maar een wilde gok:
Als je die dingen in een Form hebt staan moet je "public" vervangen door "private".

En als je op die site had ge-le-zen, dan zag je dit staan:
If this is a one-form project, the declares below could be placed into the general declaration section of the form instead, with all Public references changed to Private.
Een beetje moeite doen kan geen kwaad hoor.

[ Voor 46% gewijzigd door RobIII op 27-05-2003 15:42 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
klopt .. heb ik aangepast.
toen werkte het nog niet .. maaaaar toen even de juiste namen gekoppeld aan de knoppen :P heh.. perfecto!!! thanks!

Verwijderd

Topicstarter
als ik het label vervang door een textveld (ook label1 genaamd) loopt ie vast op
label1.caption.. er zal vast een andere syntax gebruikt moeten worden... wat??

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Een textbox heeft geen .caption property, wel een .text property...

...Maar als ik jou was zou ik toch echt nog maar eens effe een tutorial lezen of de help erbij pakken... Dit is basicker dan basic ;)

...en gebruik de edit knop (Afbeeldingslocatie: http://gathering.tweakers.net/global/templates/got/images/icons/edit.gif) voortaan als je iets toevoegt aan je posts...

[ Voor 135% gewijzigd door RobIII op 27-05-2003 15:59 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 09:12

johnwoo

3S-GTE

Het nadeel van het gebruik van SHBrowseForFolder icm met BIF_BROWSEINCLUDEFILES is dat je versie 4.71 of nieuwer van de common dialog shell controls nodig hebt. GetOpenFileName en GetSaveFileName werken gewoon zonder meer op alle Windows versies. Wat mij betreft is SHBrowseForFolder bedoeld om folders te selecteren (de naam zegt het al), en GetOpenFileName/GetSaveFileName om files te selecteren.

Bovendien vind ik zelf de standaard file selectie dialog van GetOpenFileName veel fijner werken; De SHBrowseForFolder wordt erg snel onoverzichtelijk omdat je alles gewoon onder elkaar hebt. Bij GetOpenFileName krijg je gewoon een explorer look, waarbij je zelf kan kiezen of je een lijst/details/grote icons/kleine icons wil zien.

[ Voor 32% gewijzigd door johnwoo op 27-05-2003 16:21 ]

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


  • whoami
  • Registratie: December 2000
  • Laatst online: 10:17
Het is niet de bedoeling van P&W dat alles hier voorgekauwd wordt.

Er wordt van jou -als topicstarter- ook enige zelfwerkzaamheid verwacht.

https://fgheysels.github.io/

Pagina: 1

Dit topic is gesloten.