Hyperlink per Drag and Drop in Form übergeben



  • Hallo Leute
    Die Suche hier im Forum brachte mir ´ne Menge über Drag and Drop, aber nicht was ich benötige.
    Also:
    Ich habe auf meinem Form ein TPanel in dem sich auch noch ein TCppWebBrowser befindet.
    Nun möchte ich es ermöglichen, von anderen Websites, (die z.B im Firefox geöffnet sind) einen Link per Drag and Drop
    in das Panel auf meinem Form zu ziehen.
    Wenn ich das versuche, zeigt mir der Maus-Cursor das gesperrt-Zeichen.

    Wie man Dateien auf ein Form zieht, weiss ich. Es geht mir hierbei nur um Hyperlinks.
    Bei allen geläufigen Browsern funktioniert das ja schliesslich auch.

    Kann mir da vielleicht jemand auf die Sprünge helfen?

    Danke

    wNw



  • Dafür wird meist die Drag and Drop Component Suite von A. Melanders empfohlen.



  • Hallo Jansen
    Danke für den Tip, doch kann ich damit überhaupt nichts anfangen.
    Ich kenne mich mit Delphi nicht aus.
    Die Seite unterstützt den C++ Builder überhaupt nicht und ich vermisse eine Dokumentation der einzelen Funktionen wie z.B: TDropURLTarget.
    Was muss ich denn wo einbinden? Fragen über Fragen...
    So komme ich keinen Schritt weiter.

    Trotzdem Danke

    Hat noch jemand einen Ratschlag für mich?
    wNw



  • Du brauchst nur die Komponenten installieren (doch C++ Builder wird unterstützt) und dann aus der Komponentenpalette die 'TDropURLTarget'-Komponente auf deine Form ziehen und dann dessen Ereignisse benutzen...



  • Hallo

    Du brauchst nur die Komponenten installieren (doch C++ Builder wird unterstützt) und dann aus der Komponentenpalette die 'TDropURLTarget'-Komponente auf deine Form ziehen und dann dessen Ereignisse benutzen...

    Wo sind die Komponenten? In welchem Ordner?
    Ich kann sie beim besten Willen nicht finden...

    Edit:
    Alles was ich gefunden habe sind .pas , .hpp und .obj Dateien im Ordner "Source"
    Wenn ich die installiere habe ich aber keine Komponente in der Komponenten-Palette.
    Wo installiert sich die Komponente hin?

    wNw



  • s. FAQ: Komponenten benutzen - Delphi Packages

    Bei der Komponenteninstallation einfach alle *.pas-Dateien auswählen, dann kompilieren und anschließend verwenden.



  • Hallo
    Danke soweit.
    Habe alle Tips (aus den FAQs) befolgt aber es gibt noch ein Problem (wie könnte es auch anders sein):
    Beim (nach dem) installieren bekomme ich diese Fehlermeldung:

    [Pascal Fatal Error] DragDropDesign.pas(39): File not found: 'DsgnIntf.dcu'

    Hast du oder jemand anders dazu einen Tip?
    Eine neue Komponente habe ich nämlich immer noch nicht in der Palette.

    Danke

    wNw



  • Hi,

    die JvDsgnIntf.dcu findest Du in der Jedi VCL unter jvcl\lib\c6.
    Wenn nicht vorhanden: http://sourceforge.net/projects/jvcl/

    Gruß myerscola



  • Hallo
    Hab mir Jvcl von der angegebenen Seite runtergeladen. Danke dafür.
    ABER die Datei "JvDsgnIntf.dcu" ist in dem Paket nicht enthalten.
    Habe die Windows Suche benutzt: Keine Datei mit diesem Namen gefunden.
    Ausserdem verlangt die Drag and Drop Komponente "DsgnIntf.dcu" und nicht "JvDsgnIntf.dcu".
    Warum ist das alles so kompliziert?
    Um ehrlich zu sein, weiss ich noch nicht mal was diese Jedi Geschichte ist und warum ich sie überhaupt brauche...
    Aber ich habe noch nicht aufgegeben.
    Irgendwie muss ich diese Komponente doch installiert bekommen.
    Ihr habt es ja schliesslich auch geschafft.
    Übrigends hatte ich noch garnicht erwähnt: ich benutze BCB 5.
    Hoffe weiter auf Hilfe...
    Danke
    wNw



  • Hallo
    Habe nach langem googeln folgendes gefunden:
    (Auszug aus der BCB5-Hilfe)

    Compiling packages with DsgnIntf

    The compiled version of the Design Interface unit, DsgnIntf.dcu, is no longer included with C++Builder (or Delphi). To compile design-time packages using this unit, you must include the PFLAGS option –LUvcl50 in the project options for the package's project. From the main IDE menu select Project|Edit Option Source to edit the project options. In the entry for PFLAGS add the –LUvcl50 option. For example:

    <PFLAGS value="-YDYD -W -$O- -v -JPHNE –M –LUvcl50"/>

    Runtime redistribution of DsgnIntf.dcu was in contradiction of the license agreement and so this file is no longer included with C++Builder.

    Meine Freude war gross, doch noch grösser war die Enttäuschung !
    Es kommt immer noch die gleiche Fehlermeldung:

    [Pascal Fatal Error] DragDropDesign.pas(39): File not found: 'DsgnIntf.dcu'

    Ich bekomme die von Jansen empfohlene Drag and Drop Komponente nicht installiert.
    Langsam frisst das an meinen Nerven...
    Kann mich vielleicht jemand erlösen und mir sagen, was ich denn nun tun soll?

    Danke

    wNw



  • wNw schrieb:

    Kann mich vielleicht jemand erlösen und mir sagen, was ich denn nun tun soll?

    Mal die Projektdatei (*.dpk oder *.bpk) herzeigen.



  • Hallo
    Bitteschön, die .bpk-Datei:

    <?xml version='1.0' encoding='utf-8' ?>
    <!-- C++Builder XML Project -->
    <PROJECT>
    <MACROS>
    <VERSION value="BCB.05.03"/>
    <PROJECT value="DaD.bpl"/>
    <OBJFILES value="DragDrop.obj DragDropComObj.obj DragDropContext.obj DragDropDesign.obj
    DragDropFile.obj DragDropFormats.obj DragDropGraphics.obj
    DragDropHandler.obj DragDropInternet.obj DragDropPIDL.obj DragDropText.obj
    DropComboTarget.obj DropHandler.obj DropSource.obj DropTarget.obj DaD.obj"/>
    <RESFILES value="DaD.res DragDrop.dcr DragDropContext.dcr DragDropFile.dcr
    DragDropGraphics.dcr DragDropHandler.dcr DragDropInternet.dcr
    DragDropPIDL.dcr DragDropText.dcr DropComboTarget.dcr DropHandler.dcr
    DropSource.dcr DropTarget.dcr"/>
    <DEFFILE value=""/>
    <RESDEPEN value="(RESFILES)"/><LIBFILESvalue=""/><LIBRARIESvalue="dclusr50.lib"/><SPARELIBSvalue="Vcl50.libdclusr50.lib"/><PACKAGESvalue="vcl50.bpi"/><PATHCPPvalue=".;"/><PATHPASvalue=".;"/><PATHRCvalue=".;"/><PATHASMvalue=".;"/><DEBUGLIBPATHvalue="(RESFILES)"/> <LIBFILES value=""/> <LIBRARIES value="dclusr50.lib"/> <SPARELIBS value="Vcl50.lib dclusr50.lib"/> <PACKAGES value="vcl50.bpi"/> <PATHCPP value=".;"/> <PATHPAS value=".;"/> <PATHRC value=".;"/> <PATHASM value=".;"/> <DEBUGLIBPATH value="(BCB)\lib\debug"/>
    <RELEASELIBPATH value="(BCB)\\lib\\release"/> WW -O- -v -JPHNE -M"/>
    <RFLAGS value=""/>
    <AFLAGS value="/mx /w2 /zd"/>
    <LFLAGS value="-D"" -aa -Tpp -x -Gn -Gl -Gi -v"/>
    </OPTIONS>
    <LINKER>
    <ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj (OBJFILES)"/><ALLRESvalue="(OBJFILES)"/> <ALLRES value="(RESFILES)"/>
    <ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
    </LINKER>
    <IDEOPTIONS>
    [Version Info]
    IncludeVerInfo=1
    AutoIncBuild=0
    MajorVer=1
    MinorVer=0
    Release=0
    Build=0
    Debug=0
    PreRelease=0
    Special=0
    Private=0
    DLL=0
    Locale=1031
    CodePage=1252

    [Version Info Keys]
    CompanyName=
    FileDescription=
    FileVersion=1.0.0.0
    InternalName=
    LegalCopyright=
    LegalTrademarks=
    OriginalFilename=
    ProductName=
    ProductVersion=1.0.0.0
    Comments=

    [Debugging]
    DebugSourceDirs=$(BCB)\source\vcl

    [Parameters]
    RunParams=
    HostApplication=
    RemoteHost=
    RemotePath=
    RemoteDebug=0

    [Compiler]
    ShowInfoMsgs=0
    LinkDebugVcl=0
    LinkCGLIB=0

    [Language]
    ActiveLang=
    ProjectLang=
    RootDir=
    </IDEOPTIONS>
    </PROJECT>

    Hoffe du kannst damit was anfangen...
    DANKE
    wNw


Anmelden zum Antworten