German Mit OpenDialog File von Speicherkarte laden ?

Paulsche

Well-Known Member
Licensed User
Longtime User
Hi, ich möchte aus meinem Programm eine .png Datei laden, die dann als Hindergrundbild einer Form dienen soll.
Auf dem Desktop klappt es Prima, bei ÖffnenDialog bin ich gleich in meinem Programmverzeichnis, aber auf dem PPC bin ich immer in "My documents" ,
was auch noch nicht so schlimm wäre, aber wenn ich die Datei dann von der Speicherkarte auswähle, kann er sie nicht finden, obwohl sie da ist.

Kann das sein dass ich von der Speicherkarte keine Datei auswählen kann ?
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Paulsche,

der Standarddialog von Windows Mobile für Öffnen und Speichern unterstützt leider keinen Wechsel bzw. die Auswahl einer Speicherkarte. :sign0161:

Aber es gibt Abhilfe - mit den FileDialogChanger

Habe ich selbst bei mir vor Urzeiten istalliert. Funzt wunderbar... :sign0060:



Gruß
specci48
 

Paulsche

Well-Known Member
Licensed User
Longtime User
Hm, dann muss ich die Freeware mit meinem Programm mitgeben, mit Anweisung dieses zuerst zu installieren bevor mein Programm benutzt wird ?

oder kann man es irgendwie automatisch installieren lassen ?

* Habs gerade mal runtergeladen, das ist eine .cpl Datei, muss man die nur in das windows-verzeichnis kopieren ?
Welche Datei muss ich nehmen ? Arm, Mips, SH3 ?
 
Last edited:

klaus

Expert
Licensed User
Longtime User
Hall Paulsche,
Auf meinem Qtek 9090 kann Ich eine Datei von der Speicherkarte lesen.
Im OpenDialog Fenster ist ganz oben ein ComboBox 'Ordner:' da ist der erste Eintrag 'Alle Ordner' da werden dann alle gefundene Dateien unten aufgelistet auch die auf der Speicherkarte.

Beim speichern kann man die Speicherkarte in der untersten ComboBox wählen.

Eine andere Möglichkeit wäre das FileChooser Modul von hier: http://www.b4x.com/forum/code-samples-tips/3701-some-modules.html

Beste Grüsse.
 

specci48

Well-Known Member
Licensed User
Longtime User
Zur Verteilung ist diese Erweiterung natürlich nicht sinnvoll zu gebrauchen. :sign0013:

Aber schau doch mal in folgenden Post von Klaus: Some Modules

Ich habe die Module selbst noch nicht auf dem Device ausprobiert, aber eventuell kann der FileChooser ja auch die Speicherkarte erkennen.


Gruß
specci48


Edit: @Klaus - Du bist einfach zu schnell... ;-)
 

klaus

Expert
Licensed User
Longtime User
Er kann es !

Beste Grüsse.
 

Attachments

  • FileChooser.jpg
    FileChooser.jpg
    19.3 KB · Views: 359
Last edited:

Paulsche

Well-Known Member
Licensed User
Longtime User
Hall Paulsche,
Auf meinem Qtek 9090 kann Ich eine Datei von der Speicherkarte lesen.
Im OpenDialog Fenster ist ganz oben ein ComboBox 'Ordner:' da ist der erste Eintrag 'Alle Ordner' da werden dann alle gefundene Dateien unten aufgelistet auch die auf der Speicherkarte.

Beim speichern kann man die Speicherkarte in der untersten ComboBox wählen.

Eine andere Möglichkeit wäre das FileChooser Modul von hier: http://www.b4x.com/forum/code-samples-tips/3701-some-modules.html

Beste Grüsse.

Hi Klaus,

es ist so, ich kann mit openDialog schon meine Speicherkarte auswählen, auch die Grafikdatei, aber es kommt dann die Meldung:
"Missing file: \SDMMC\Spritkosten\SDMMC\Tankliste.png"

Da ist im Pfad die Speicherkarte "SDMMC" 2 mal angegeben, geht also ohne Hilfsmittel nicht. Das Programm "FileChooser" müsste ich mir mal ansehen, sind aber halt schon ein paar codezeilen.

Gibt es keine einfachere Möglichkeit auch ohne OpenDialog eine Datei aus einem Verzeichnis auszuwählen ?
Ich hab die Grafikdateien in einem festen Unterverzeichnis ("Hintergrundbilder") der Anwendung, es wäre sogar von Vorteil wenn man kein verzeichnis wählen müsste, sondern nur die Datei aus dem Verzeichnis.

** Ich glaub der Fehler liegt daran, dass beim Pfad der in meine Konfig.ini geschrieben wird der erste "\" fehlt, wenn ich den Pfad manuel in der Datei editiere wird die Grafikdatei korrekt geladen **

Da der "\" nur bei der Speicherkarte fehlt, muss ich nur abfragen ob im String das erste Zeichen ein "\" ist, und nur wenn der fehlt,
einen einfügen.
Ich glaube ich bringe das jetzt doch noch hin , trotzdem danke an euch !
 
Last edited:

klaus

Expert
Licensed User
Longtime User
Hallo Paulsche,

Ich hab das Ganze nochmals näher durchgeschaut.

Auf meinem Qtek9090 sieht man auf der Speicherkarte, mit OpenDialog nur eine Ordnertiefe zum Beispiel:
- "\Strorage Card\Rose.jpg" OK
- "\Strorage Card\SDTest\Rose.jpg" OK
- "\Strorage Card\Test\Images\Rose.jpg" nicht gesehen

Wenn man im Programm die Bilder direkt läd, funktioniert es bei mir, zum Beispiel.
Form1.LoadImage("\Strorage Card\Test\Images\Rose.jpg")

Da Deine Bilder in einem festen Unterverzeichniss sind gibt es eine andere Möglichkeit:
- Beim laden des Programms, mit FileSearch die Bilddateien in eine ArrayList laden
- Die Dateinamen von der ArrayList in eine ComboBox laden
- Der Benützer kann dann seine Datei wählen und mit dem vollen Dateinamen aus der ArrayList kannst Du das Bild laden.

Funktioniert bei mir !

Beste Grüsse.
 

Paulsche

Well-Known Member
Licensed User
Longtime User
Hi Klaus,

wie Du in meinem Edit des letzen Posts sehen kannst, hab ich es gelöst,
beim Zugriff auf meine Speicherkarte wird kein Backslash angefügt.

Aber Deine Lösung hört sich auch interessant an, da könnte ich bei der Auswahl
der Datei vielleicht die Grafik anzeigen lassen.

Danke !
 

klaus

Expert
Licensed User
Longtime User
Hallo Paulsche,

Ich hatte dein Edit im vorletzten Post nicht gelesen, ich schaue eigentlich nur die nicht gelesenen Posts an. Leider bleibt der Status von editierten Posts als gelesen, also hatte Ich ihn nicht nochmal gelesen.

Hätte dann aber wahrscheinlich auch nicht nach einer anderen Lösung gesucht.

Beste Grüsse.
 

Paulsche

Well-Known Member
Licensed User
Longtime User
Alles klaro, werd Deine Lösung trotzdem mal versuchen, Dateiauswahl wäre evtl. Benutzerfreundlicher, danke.
 
Top