Hirdetés
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- nézzbe: AM3 hűtés s478-ra
- sh4d0w: Van-e még?
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- eBay-es kütyük kis pénzért
- Mr Dini: Mindent a StreamSharkról!
- joghurt: Megtarthatod a jogsid?
Új hozzászólás Aktív témák
-
válasz
Mzmatus
#3198
üzenetére
Bocs, nincs sok időm jelenleg (még mindig) PH-ra...
Utánaolvastam, olybá tűnik, hogy 2 megoldás lehet
1. .NET plugin írásával, akkor beépített funkciók érhetőek el
(Ez sem okoz gondot (mármint .NET plugin-t írnom, csak ahhoz viszont fel kell pattintanom mindenképp egy AutoCAD-t, talán hétvégén megsasolom)2. Hagyományos Winapi függvények használatával, sajna ez összetettebb mutatvány, több infó szükségeltetik hozzá (csomó paramétert és változót kell ismerni stb)
Ez utóbbit megmutatom hogyan kell elkövetni (x64-re/hez van deklarálva a fileopendialog import stb), ez univerzális kód -bár nem próbáltam AutoCAD-ben, mert nincs fent- ezért mennie kell 100%-ban, bármely VBA-ban is legyen.
A kód megnyitja a fájlablakot, szűrőt használ (DVB fájlokat listázza csak(rákerestem a neten, az újabb CAD-k ilyen kiterjesztéssel mentik a VBA kódot, ha meg esetleg mégsem, akkor a forrásban írd át a *.DVB-t *.*-ra, akkor minden fájl látszódni fog), ha egy ilyen fájlt kijelölsz, akkor kiírja a teljes útvonalával együtt, ha meg bezárod az ablakot, akkor meg, hogy nem jelöltél ki semmit... Szóval most ennyi fért az időmbe, ha lesz időm hétvégén folyt. köv.Option Explicit
Private Declare PtrSafe Function GetOpenFileName Lib "comdlg32.dll" Alias _
"GetOpenFileNameA" (MYOPENFILENAME As OPENFILENAME) As Long
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As LongPtr
hInstance As LongPtr
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As LongPtr
lpfnHook As LongPtr
lpTemplateName As String
End Type
Sub GetFileWithFullPath()
Dim MyOpenFile As OPENFILENAME
Dim MyResult As Long
With MyOpenFile
'kezdő drive/folder
.lpstrInitialDir = "D:\"
'fájlablak fejléce
.lpstrTitle = "Fire/SOUL/CD"
'fájlablak szűrő
.lpstrFilter = "AutoCAD VBA" & Chr$(0) & "*.dvb" & Chr$(0)
'default flag beállítás
.flags = 0
.nFilterIndex = 1
.hwndOwner = 0
.lpstrFile = String(257, 0)
.nMaxFile = LenB(.lpstrFile) - 1
.lStructSize = LenB(MyOpenFile)
.lpstrFileTitle = .lpstrFile
.nMaxFileTitle = .nMaxFile
End With
MyResult = GetOpenFileName(MyOpenFile)
If MyResult = 0 Then
MsgBox ("Nem választottál ki fájlt!")
Else
MsgBox (Trim(Left(MyOpenFile.lpstrFile, InStr(1, MyOpenFile.lpstrFile, vbNullChar) - 1)))
End If
End Sub
Új hozzászólás Aktív témák
Hirdetés
- Honor Magic6 Pro - kör közepén számok
- BestBuy topik
- Apple iPhone 17 Pro Max – fennsík
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen program, ami...?
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- Méretes telekonverter az Oppo Find X9 Ultra hátán
- További aktív témák...
- 212 - Lenovo IdeaPad Slim 5 (16IMH9) - Intel Core U5 125H, no GPU
- 211 - Lenovo Legion 5 (15ITH6H) - Intel Core i7-11800H, RTX 3060
- 210 - Lenovo IdeaPad 5 Pro (16ARH7) - AMD Ryzen 7 6800HS, RTX 3050Ti
- 209 - Lenovo Yoga Pro 7 (14APH8) - AMD Ryzen 7 7840HS, no GPU
- 206 - Lenovo Legion Slim 7 (16IRH8) - Intel Core i7-13700H, RTX 4060
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen 2 munkaállomás - i7 11850H 16GB DDR4 1TB SSD RTX A2000 4GB W11
- HIBÁTLAN iPhone 16 Pro Max 256GB White Titanium -1 ÉV GARANCIA - Kártyafüggetlen, 92% Akkumulátor
- 152 - Lenovo LOQ (15IRH8) - Intel Core i5-12450H, RTX 4060 (ELKELT)
- Keresünk iPhone 14/14 Plus/14 Pro/14 Pro Max
- Gyári garanciával Digitalizáló tábla XP-PEN Artist Pro 24
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

