Ich habe ein Widget, welches ich in meinem MainWindow als centralWidget festlege. Durch Drag&Drop von Dateien (z.B. aus dem Windows Explorer) soll die entsprechenden Datei geladen werden - wie krieg ich das hin? Ich muss ja die DragEnterEvent-Methode überschreiben:
The following code shows how dragEnterEvent() can be reimplemented to tell the drag and drop system that we can only handle plain text:
void Window::dragEnterEvent(QDragEnterEvent *event)
{
if (event->mimeData()->hasFormat("text/plain"))
event->acceptProposedAction();
}
Wenn Du noch genauer prüfen willst, dann den accept nur, wenn der Dateiname einem bestimmten Format entspricht. Du kannst auch die Datei lesen, um die ersten Bytes zu prüfen, usw.
Danke für deine Mühen, hatte vergessen zu erwähnen, dass das bei mir nicht klappt (ich glaub text/plain ist für reinen Text, wenn du den z.B. aus einem Editor dragst).
Bei Dateien muss es wohl über die Urls laufen, da folgender Code klappt (es werden nur Dateien mit Dateinendung .dat erlaubt):