Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
16. Jun 2009
also hättest du das 1:1 übernommen, dann hättest du das problem
nich gehabt P := StrNew(PChar(key));
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
16. Jun 2009
kannst du doch auch!
du übergibst Add den key und dann einen pointer auf deine daten.
was das für daten sind ist total egal.
in meinem beispiel oben ist das ein string. wenn du mehrere felder
speichern willst, dann übergibst du einen pointer auf einen
record.
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
16. Jun 2009
war grad am bearbeiten von meinem vorigen beitrag.
also siehe vorigen beitrag von mir :)
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
16. Jun 2009
hallo
hab deinen source nur kurz überflogen, aber versuch mal deine variable zu nem pointer zu casten, also
so in etwaif hashpicofsit.Find(key, Pointer(dummy2))
edit:
hab nun mal etwas genauer geguckt...
if not (filename = '') then hashpicofsit.Add(filename,@key)
ich glaube nicht, dass das so funktionieren wird. du fügst einen pointer
auf eine lokale variable ein, die beim verlassen...
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
12. Jun 2009
habe zwar informatik studiert, aber delphi habe ich mir über die jahre selber beigebracht.
is ja ne super hilfe dabei, die einen schon ganz schön weit bringt. und wnen man doch mal nicht
weiter kommt gibts ja genug seiten/communities wo man nachschauen/fragen kann.
man muß halt nur etwas ehrgeiz haben.
was willst du da denn genau machen?
einfach nur 2-spalten in excel anzeigen?
excel kann...
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
12. Jun 2009
das problem ist, dass du dem programm ja keine zeit gibts die farbänderung
auch an zu zeigen, da du ja noch in deiner routine steckt (und dein
programm damit in dem mom beschäftigt ist). du kannst dem programm
zeit geben diese dinge zu bearbeiten indem du einmal
Application.ProcessMessages; aufrufst nachdem du was geändert hast
(z.B. deine panel-farbe). alternativ könntest du deine ganze...
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
12. Jun 2009
häng doch mal dein ganzes projekt an. dann kann ich das schnell debuggen.
is mir nun etwas zu komplex da alles genau durch zu gucken :)
könnte mir vorstellen, dass das mit den timern zusammen hängt.
wenn du timer1.enabled machst, wartet dein programm nicht bis
die ontimer-routine (in deinem fall die button-click-methode) fertig ist,
sondern macht so weiter (panel färben, timer2.enabled,...
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
12. Jun 2009
also wenn du dein progamm noch beschleunigen willst, dann würde ich deine
GetFilesInDirectory so abändern, dass sie nur 1x aufgerufen wird.
die gültigen dateiendungen kann man z.B. in ner hash-table speichern und
dann die dateiendung der aktuellen datei in der hash-table suchen.
so z.B.:
//brauchste nur 1x machen z.B. beim erstellen des forms
FDictImageExt :=...
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
11. Jun 2009
also die TStringDictionary-Klasse gehst du so durch:
var
Key: String;
dummy: Pointer;
begin
Dict.First;
while Dict.Next(Key, dummy) do
begin
//mach was mit Key
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
11. Jun 2009
was genau ist denn jetzt noch dein problem? ich blicke nicht mehr ganz durch ;)
formuliere mal ein paar konkrete probleme, dann versuche ich dir zu antworten 8)
Forum: Object-Pascal / Delphi-Language
Delphi
by nat,
10. Jun 2009
das hatte ich mir auch schon überlegt (schon bei einem anderen thread des autors).
wer sagt denn, dass logo.jpg in ordner-A gleich ist mit logo.jpg in ordner-B?
(in bezug auf die aufgabenstellung: doppelte dateien finden)