AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien einlesen

Ein Thema von schöni · begonnen am 1. Apr 2012 · letzter Beitrag vom 6. Apr 2012
Antwort Antwort
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#1

AW: Dateien einlesen

  Alt 4. Apr 2012, 10:20
Danke @Himitsu, @ConnorMcLeod, DeddyH....

@Himitsu:

Danke für den Hinweis, werde mir meinen Quelltext noch mal bezüglich der Variablen "stillfiles" ansehen.

Aber:

Ich wollte allerdings eigentlich eine selber erstellte Lösung schaffen. Der Filesearcher von DeddyH sieht gut aus, aber damit nutze ich wieder eine Lösung, die jemand anderes geschrieben hat. Wenn ich aber programmieren will, muss ich auch fähig sein, selber eine Lösung zu erarbeiten. Außerdem muss ich mich in eine von anderen Programmierern erstellte Lösung auch hineinarbeiten, bevor ich sie nutzen kann.

Werd mir deshalb die anderen Lösungen für findallfiles auch anschauen. Werde auch den FileSearcher-Quelltext von DeddyH studieren und bei Verständnisproblemen hier fragen. Die pichshow Komponente(n) schaue ich mir auch an.

Und schließlich habe ich genug Ehrgeiz, aus all diesen Anregungen meine persönliche Lösung zu schaffen.

.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#2

AW: Dateien einlesen

  Alt 4. Apr 2012, 10:53
Aaaaaaber eine Frage habe ich schon jetzt an DeddyH:

Die Picshow Demos nutzen ja die zu installierende PicShow-Komponente. Nun habe ich jedoch nur D7 Personal und die kostenlose Turbo Delphi Version. In letzterer kann ich keine Fremdkomponenten installieren. Erstere enthält keine Datenbank Komponenten. Ich muss also die Komponenten komplett per Hand instantiieren. Deshalb die Frage:

Was ist Picture.Data in Splash.dfm im Ordner DBDemo?

Was ist PgPicture.Data in Main.dfm im Ordner Demo?

Im Ordner Demo gibt es den Unternordner Photos. Ich vermute Picture.Data bzw. PgPicture.Data enthält eines der Fotos aus diesem Ordner? Richtig?

Allerdings habe ich die Funktion noch nicht gefunden, die mir das Foto dorthin lädt, wenn ich die PicShow Komponente aud der .dfm Datei entferne, um die Demos wegen der vorausgesetzten DB Komponenten mit Turbo Delphi zu übersetzen.


.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Dateien einlesen

  Alt 4. Apr 2012, 11:14
Die Klasse TGraphic kennt die Methoden LoadFromFile()/LoadFromStream()
Markus Kinzler
  Mit Zitat antworten Zitat
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#4

AW: Dateien einlesen

  Alt 4. Apr 2012, 18:46
Asche auf mein Haupt. Sorry, ich hatte den Pfadnamen falsch.

FindFirst(FFileName)... und nicht, wie es richtig gewesen wäre:

Delphi-Quellcode:
FindFirst(
   ExtractFilePath(FFileName)+'*'+ExtractFileExt(FFileName),...
Die FileSearch-Komponente von DeddyH schau ich mir dennoch an. Und jetzt, wo meine eigene (wenn auch) Quick and Dirty Lösung für die Diashow läuft, auch die PicShow Komponente und die anderen Tipps.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.658 Beiträge
 
Delphi 12 Athens
 
#5

AW: Dateien einlesen

  Alt 4. Apr 2012, 18:55
Die FileSearch-Komponente von DeddyH schau ich mir dennoch an.
Ich möchte Dir nur kurz warnen: als Anschauungsobjekt ist die eigentlich eher schlecht geeignet, da sehr umfangreich. Wenn Du es trotzdem versuchen möchtest, kannst Du Dich mit Fragen aber gerne an mich wenden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#6

AW: Dateien einlesen

  Alt 4. Apr 2012, 19:43
Die Klasse TGraphic kennt die Methoden LoadFromFile()/LoadFromStream()
Das weiß ich. Was ich aber nicht weiß, ist, wie wird in der Eigenschaft Picture.Data in der .dfm Datei das Bild abgelegt?

Die reinen Bilddaten ohne Headerinfo oder die komplette Datei?

@DeddyH hat, wie hier auch zu lesen ist, eine PicShow-Komponente feilgeboten. In den mitgelieferten Demos gibt es in den Formulardateien die Felder

Picture.Data und

PgPicture.Data

Ich wollte halt das Original auch dann wiederherstellen, wenn DeddyH nicht noch mal antwortet. Dazu muss ich entweder wissen, welches der mitgelieferten Fotos er als Hintergrund im Objektinspektor gesetzt hat oder ich muss die Daten als Binärdatei speichern und an (Pg)Picture.Data zuweisen, da ich in Turbo Delphi keine Fremdkompos installieren kann. In D7 Personal fehlen die leider auch vorausgesetzten DB-Komponenten. Werde das deshalb selber ausprobieren. Wenn in Data die reinen Bilddaten stehen, sollte ich diese in binform in ein Array laden können und im Quellcode an Data zuweisen können.

Zitat von DeddyH:
Ich möchte Dir nur kurz warnen: als Anschauungsobjekt ist die eigentlich eher schlecht geeignet, da sehr umfangreich. Wenn Du es trotzdem versuchen möchtest, kannst Du Dich mit Fragen aber gerne an mich wenden.
Danke für das Angebot. Ich werde bei Bedarf darauf zurück kommen. Ich versuche es trotz der Warnung.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.

Geändert von schöni ( 4. Apr 2012 um 19:45 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.658 Beiträge
 
Delphi 12 Athens
 
#7

AW: Dateien einlesen

  Alt 5. Apr 2012, 07:11
Pack mal spaßhalber ein TImage auf ein Formular, lade dort zur Entwurfszeit eine Grafik hinein und schau Dir die DFM als Text an. Dann wirst Du sehen, dass dort die kodierten Pixeldaten unter Data stehen. Das muss also keine Grafik aus dem Unterverzeichnis, sondern kann auch eine ganz andere sein. Für Dich spielt das aber keine Rolle, wenn Du die Komponente zur Laufzeit erzeugst, da Du "Data" eh nicht angreifst, sondern per LoadFromFile/LoadFromStream eine Grafik hineinladen kannst (Picture- bzw. BgPicture-Eigenschaft). Um die Komponente unter D7 Personal zu installieren, müsste es meiner Ansicht nach genügen, in der Hauptunit die DB-Variante samt aller Verweise auf DB-Packages komplett auszukommentieren. Die DB-Packages sind die, die der Compiler als fehlend monieren wird. Zu guter Letzt wirft man aus der Registrierungsunit noch die DB-Komponente raus, und es sollte gehen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#8

AW: Dateien einlesen

  Alt 5. Apr 2012, 11:35
Pack mal spaßhalber ein TImage auf ein Formular, lade dort zur Entwurfszeit eine Grafik hinein und schau Dir die DFM als Text an. Dann wirst Du sehen, dass dort die kodierten Pixeldaten unter Data stehen. Das muss also keine Grafik aus dem Unterverzeichnis, sondern kann auch eine ganz andere sein. Für Dich spielt das aber keine Rolle, wenn Du die Komponente zur Laufzeit erzeugst, da Du "Data" eh nicht angreifst, sondern per LoadFromFile/LoadFromStream eine Grafik hineinladen kannst (Picture- bzw. BgPicture-Eigenschaft). Um die Komponente unter D7 Personal zu installieren, müsste es meiner Ansicht nach genügen, in der Hauptunit die DB-Variante samt aller Verweise auf DB-Packages komplett auszukommentieren. Die DB-Packages sind die, die der Compiler als fehlend monieren wird. Zu guter Letzt wirft man aus der Registrierungsunit noch die DB-Komponente raus, und es sollte gehen.
Ok, danke, das funktioniert. Ich konnte die Komponente ohne die Datenbankteile (auskommentiert) installieren und das Demo starten.

Die Überblendeffekte funktionieren mit den kleineren mitgelieferten Bildern einwandfrei. Ich habe jedoch eigene Bilder von meiner DigiCam, die ein ganzes Stück größer sind. Da klappt das Überblenden nicht mehr so schön flüssig. Habe eienen Athlon mit 1GHz. 512 MByte RAM. Habe noch 1 Laptop mit 0,99 GByte RAM, Prozessor 1,73GHz Pentium.

Kann das optimiert werden? Wenn ja, wo?
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.658 Beiträge
 
Delphi 12 Athens
 
#9

AW: Dateien einlesen

  Alt 5. Apr 2012, 11:37
Vermutlich hast Du die originalen Riesenbilder der Webcam benutzt und lediglich die Anzeige gestrecht. Das ist eher kontraproduktiv, besser wäre es, die Bilder zu verkleinern, abzuspeichern und diese Dateien dann zu verwenden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz