dragdrop files v CLR C++

Nesvacil Jiri nesvacil na posys.eu
Čtvrtek Září 22 16:49:17 CEST 2022


https://stackoverflow.com/questions/32786187/passing-an-array-of-strings-from-c-to-c-sharp

Dne 22.09.2022 v 16:43 Pavel Hudeček napsal(a):
> Trochu jsem s tím pohnul:
> Collections::Specialized::StringCollection ^ list = 
> (Collections::Specialized::StringCollection 
> ^)e->Data->GetData(DataFormats::FileDrop, true);
> for (int n=0; n<list->Count; n++) listBox1->Items->Add(list[n]);
> To jde aspoň přeložit:-)
> Ale stejně to skončí na chybě, že System.String[] nelze přetypovat na 
> System.Collections.Specialized.StringCollection.
> Takže je ten výstup jinej než z Clipboard.GetFileDropList
>
> Pořád tedy to samé: Jak v c++ udělat System.String[]?
>
> PH
>
>
> Dne 22.09.2022 v 16:25 Pavel Hudeček napsal(a):
>> No to přepínátko funguje jen částečně, asi podle toho, které části 
>> mají udělané a když stránka neobsahuje alternativní jazyk, tak ho 
>> nezobrazí vůbec. Např. u toho clipboardu se tím do c++ přepne 
>> definice, ale example už ne. Ten jde přepnout třeba do vb.
>>
>> PH
>>
>> Dne 22.09.2022 v 16:04 Ladislav Vaiz napsal(a):
>>> Asi nechcete slyšet knížecí radu, ale já bych přešel na C# :-(
>>> V MSDN se někdy dají jazyky přepnout, např. v 
>>> https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.clipboard.getdata?view=netframework-4.0
>>> je přepínátko nad nadpisem vpravo.
>>> L.
>>>
>>> On 22.09.2022 15:55, Pavel Hudeček wrote:
>>>> Dobrý den všem,
>>>>
>>>> tady
>>>> Provide file drag and drop functionality - Visual C++ | Microsoft 
>>>> Learn 
>>>> <https://learn.microsoft.com/en-us/troubleshoot/developer/visualstudio/cpp/language-compilers/provide-file-drag-drop-functionality>
>>>> je popis jak udělat, aby se v listboxu zobrazil seznam na něj 
>>>> hozeých souborů.
>>>> To funguje.
>>>>
>>>> Jak totéž udělat v C++ CLR?
>>>>
>>>> První část s DragEnter funguje:
>>>> private: System::Void listBox1_DragEnter(System::Object^ sender, 
>>>> System::Windows::Forms::DragEventArgs^  e) {
>>>>             if (e->Data->GetDataPresent(DataFormats::FileDrop))
>>>>                 e->Effect = DragDropEffects::All;
>>>>             else
>>>>                 e->Effect = DragDropEffects::None;
>>>>         }
>>>>
>>>> Ale všechny pokusy o DragDrop selhaly na tom, že nem;žu najít C 
>>>> ekvivalent pro
>>>> string[] s = (string[]) e.Data.GetData(DataFormats.FileDrop, false);
>>>> Nějaké nápady?
>>>>
>>>> Díky,
>>>> PH
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list