Español
Fuente/ Codesnippets

Diálogo Loadfile Multiselect

 

KompilierenMarcaSeparación
von Bernhard Künzel

Proc MultiLoadFile$

    Parameters Titel$,Dateimaske$,LW$
    Titel$= Ãœberschrift des Dialoges
    Die Ãœbergabe der Dateimaske ist gleich wie bei der Profanfunktion LoadFile$()
    Beispiel Dateimaske$= Alle unterstützten Metadateien|*.wmf;*.emf
    Dateimaske$= Metafile (wmf)|*.wmf|Enhanced Metafile (emf)|*.emf
    bei Leerstring alle Dateien
    LW= kann optional ein Pfad angegeben werden  z.B.C:	est
    Case %PCount < 3:LW$=GetDir$(@)sonst wird der Übergebene Pfad übernommen
    Declare Api#,i%,Err$,Datei$,RetFile$
    Dim Api#,8100
    CaseNot Len(Dateimaske$):Dateimaske$=Alle Dateien|*.*;*.*
    Dateimaske$=Translate$(Dateimaske$,|,z)+zz
    Clear Api#,RetFile$
    Long Api#,0=76 ...................Strukturlänge für GetOpenFileName
    Long Api#,4=GetActiveWindow() ....übergeordnetes Fenster
    Long Api#,8=%HINSTANCE............Instance Dialogbox
    Long Api#,12=addr(Dateimaske$) ...Adr. AnwenderFilterfunktion
    Long Api#,16=0 ...................Adr. Customfilter
    Long Api#,20=0 ...................Max.Länge CustFilter
    Long Api#,24=0 ...................Index der Standard Definition
    long Api#,28=Api#+100 ............Adr. für die ausgewählten Dateinamen
    long Api#,32=8000 ................Max.Länge Dateinamen
    long Api#,36=0....................Adr. FileTitel
    long Api#,40=0....................Max.Länge FileTitel
    long Api#,44=addr(LW$)............Adr. Startverzeichnis z.B.C:	est
    long Api#,48=addr(Titel$).........Addr. Dialogboxtitel
    long Api#,52=$00081206 .......... OFN_EXPLORER | OFN_FILEMUSTEXIST |
    OFN_ALLOWMULTISELECT | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
    Word Api#,56=0 ...................Adr. Dateinamensbeginn
    Word Api#,58=0 ...................Adr. Extensionsbeginn
    Long Api#,60=0 ...................Adr. Standardextension
    ~GetOpenFileName(Api#)
    //Fehlerabfrage Pufferüberlauf FNERR_BUFFERTOOSMALL

    If ~CommDlgExtendedError()

        Err$=If(Equ(~CommDlgExtendedError(),$3003),Sie haben zu viele Einträge ausgewählt !,
        Format$(Fehlernummer : ###,~CommDlgExtendedError()))
        Messagebox(Err$,Hinweis,48)

    Else

        i%=Long(Api#,56)-1
        Datei$=String$(Api#,100)

        If Len(Datei$) = i% ---------> Mehrfachauswahl

            RetFile$=Datei$+
            i%=0

            While Len(Datei$)

                i%=i%+Len(Datei$)+1
                Datei$=String$(Api#,100+i%)
                Case Len(Datei$):RetFile$=RetFile$+|+Datei$

            Wend

            Else ------------------------> Einzeleintrag
            Case Len(Datei$):RetFile$=Translate$(Datei$,+FindFirst$(Datei$),|+FindFirst$(Datei$))
            Case Len(Datei$):Ins$(|,Datei$,Len(Datei$)-Len(FindFirst$(Datei$))+1)

        EndIf

    EndIf

    Dispose Api#
    Return RetFile$ erster Substring ist der Pfad alle weiteren sind Dateien (Trenner ist |)

ss=s4 href='./../../funktionsreferenzen/XProfan/ENDPROC/'>ENDPROC
 
25.09.2005  
 




Carlo
Keil
MeineHeader-Archivos (XProfan 9) behaupten todos, ellos würden no passen.
Welche se porque hier benutzt?

Saludo
Carlo

Apéndice:
algo nachdenken y una wenig suchen puede hilfreich ser.
Damit debería lo auch klappen (todavía ungetestet)


Def GetOpenFileName(1) ! COMDLG32, GetOpenFileNameA
Def CommDlgExtendedError(0) ! COMDLG32, CommDlgExtendedError
 
07.11.2005  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.368 Views

Untitledvor 0 min.
RudiB.06.04.2022
Manfred Barei08.11.2018
Peter Max Müller11.10.2017
Jochen Roxlau04.10.2014
Más...

Themeninformationen

Dieses Thema ha 2 subscriber:

Carlo Keil (1x)
iF (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie