Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Menu Funktionen programmieren (https://www.delphipraxis.net/168909-menu-funktionen-programmieren.html)

astiope 18. Jun 2012 10:00

Menu Funktionen programmieren
 
Hallo an alle! Ich habe ein problem mit der Software Borland Delphi 7 und zwar es geht um folgendes:

Ich habe mit delphi 7 ein Menu programmiert sowie: Die funktion Öffnen,Speichern Speichern unter und dann Beenden.Jetzt ist die frage: Was muß ich für ein befehl eingeben damit diese 3 funktionen richtig funktionieren sowie z.B: Wenn ich unter der funktion Öffnen gehe - ich will das sich ein weiteres fenster öffnet mit den verknüpften formaten wie z.B: jpg oder tiff oder gif suchen kann ? Es müssen ja nicht unbedingt Bilder gesucht werden -- es kann auch was anderes sein also wie muß ich vorgehen? dies gilt auch für speichern und speichern unter!

gruß

astiope

jaenicke 18. Jun 2012 10:03

AW: Menu Funktionen programmieren
 
Hallo

Das musst du schon alles einzeln programmieren. Zur Auswahl der Dateien kannst du einen TOpenDialog benutzen.

DeddyH 18. Jun 2012 10:04

AW: Menu Funktionen programmieren
 
Hallo und Willkommen in der DP :dp:,

mir scheint, Du suchst die Dialoge (Reiter in der Komponentenpalette). Da gibt es z.B. einen TOpenDialog, TOpenPictureDialog und TSaveDialog. In der Hilfe gibt es wahrscheinlich auch Beispiele dazu, wie man die benutzt.

astiope 18. Jun 2012 10:34

AW: Menu Funktionen programmieren
 
Hallo unter hilfe wurde die TOpenDialog, TOpenPictureDialog und TSaveDialog gefunden aber grade hier komme ich nicht weiter.:( --

Zum Beispiel unter TOpendialog steht das hier:

Beschreibung

TOpenDialog zeigt ein Dialogfeld an, in dem der Benutzer Dateien auswählen und öffnen kann. Das Dialogfeld wird zur Laufzeit erst angezeigt, nachdem es mit der Methode Execute aktiviert wurde. Wenn der Benutzer auf Öffnen klickt, wird das Dialogfeld geschlossen, und die ausgewählten Dateien werden in der Eigenschaft File gespeichert.

Standardmäßig werden native Dialogfelder anstatt von Qt-Dialogfeldern angezeigt. Das entsprechende Verhalten wird über die Eigenschaft UseNativeDialog gesteuert.

Aber ich komme dann hier nicht weiter

Mir wäre es von vorteil wenn irgendjemand von euch sagen würde wie ich genau vorgehen soll daswäre nett danke.

gruß

astiope

DeddyH 18. Jun 2012 10:40

AW: Menu Funktionen programmieren
 
Pack Dir einen TOpenDialog auf Dein Formular, nenn ihn z.B. dlgOpen, und versuch mal folgenden Code im OnClick des Menüpunkts:
Delphi-Quellcode:
if dlgOpen.Execute then
  begin
    (* Hier das, was mit den Dateinamen geschehen soll *)
  end;
[edit] Allerdings würde ich Dir das E-Book vom Delphi-Treff empfehlen, da Dir wohl einige Grundlagen fehlen. Das Buch kostet nichts und behandelt die neueste Delphi-Version, das meiste sollte sich aber auch mit älteren Versionen nachvollziehen lassen. [/edit]

astiope 18. Jun 2012 10:49

AW: Menu Funktionen programmieren
 
Hallo es wurde auch gesagt das man diese 3 funktionen wie Öffnen Speichern speichern unter einzeln extra programmieren soll -- wie darf ich das hier verstehen ?

gruß

DeddyH 18. Jun 2012 10:54

AW: Menu Funktionen programmieren
 
Das soll heißen, dass Du den Code für Speichern, Speichern unter und Öffnen selbst schreiben musst. Dafür gibt es nichts Fertiges.

astiope 18. Jun 2012 11:05

AW: Menu Funktionen programmieren
 
Also ich habe if dlgOpen.Execute then eingegeben aber es passiert nichts! Was meinten sie den mit diesen text - ihr zitat:

Pack Dir einen TOpenDialog auf Dein Formular, nenn ihn z.B. dlgOpen, und versuch mal folgenden Code im OnClick des Menüpunkt.

Sie müssen es deutlicher werden damit da ich sonst nicht weiterkomme -

gruß

himitsu 18. Jun 2012 11:09

AW: Menu Funktionen programmieren
 
Es kommt auch drauf an was du speichern willst. (irgendwie hab ich dazu keine Aussage gefunden)

Bei vielen Komponenten (Memos, Images, Stringlisten, ...) gibt es z.B. Metoden ala SaveToFile und LoadFromFile, bzw. SaveToStream und LoadFromStream.


Aber ja, die Funktionen hinter diesen Menüs mußt du schon selber schreiben ... von Alleine weiß Delphi ja nicht was gespeichert werden soll.
Also mindestens die genannten Dialoge aufrufen und dann die entsprechende Speicherfunktion (falls vorhanden).



- TOpenDialog aus der Komponentenpalette auf das Formular ziehen
- im Objektdesigner den Namen ändern
- im Quellcode
Delphi-Quellcode:
if derName.Execute then
und nun sollte der Dialog aufgehn
- dann eventuell noch ein paar der Properties dieses Doalogs anpassen (z.B. die gewünschten Filter)

Zitat:

aber es passiert nichts!
Die Methode, wo der Code drinsteht, ist aber auch mit dem Menü verbunden?

Ansonsten empfehle ich immer gern den Debugger, welchen man unbedingt kennen sollte, denn der zeigt einem ganz schnell ob und wie der Code ausgeführt wird.

astiope 18. Jun 2012 11:14

AW: Menu Funktionen programmieren
 
Genau das ist ja das problem - Allein delphi weiß nicht was er machen soll - aber wo bekomme ich alle befehle aufgelistet ? Unter hilfe option bei delphi gibt es zwar die befehle aber da steht nicht genau drinn wie man weiterkommen soll.

Haben sie vielleicht eine liste aller befehle von delphi und deren bedeutung und was man damit anfangen kann ?

gruß

jaenicke 18. Jun 2012 11:20

AW: Menu Funktionen programmieren
 
Das sind viele tausend. ;-) Dafür gibts die Hilfe.

Wo kommst du denn gerade konkret nicht weiter? Du hast geschrieben, dass bei dem Execute nichts passiert. Wird das denn überhaupt ausgeführt? (Sprich wo hast du das hingeschrieben?)

Vielleicht hilft dir auch ein Crashkurs:
http://www.christian-stelzmann.de/in...ials_crashkurs

Und nebenbei:
Hier ist es üblich sich zu duzen. ;-)

astiope 18. Jun 2012 11:31

AW: Menu Funktionen programmieren
 
ich habe den befehl unter begin eingegeben oder auch über diese begin befehl - es erscheint immer rot wenn ich es versuche es zu kompilieren - was mache ich den hier falsch ?

gruß

jaenicke 18. Jun 2012 11:42

AW: Menu Funktionen programmieren
 
Zeig doch mal etwas Code. Ein begin kann irgendwo stehen...

astiope 18. Jun 2012 11:47

AW: Menu Funktionen programmieren
 
Hallo ich habe zum beispiel ihr befehl code unter der formular menu und dann unter öffnen eingegeben:

if dlgOpen.Execute then
begin
(* Hier das, was mit den Dateinamen geschehen soll *)

so wie sie mir es angeschrieben haben habe ich es rüber kopiert

DeddyH 18. Jun 2012 11:53

AW: Menu Funktionen programmieren
 
Hast Du das "end;" auch mitkopiert? Und wie gesagt, lerne erst die Grundlagen, sonst kann das nichts werden.

astiope 18. Jun 2012 11:55

AW: Menu Funktionen programmieren
 
Ja habe ich aber trotzdem passiert nix - keine ahnung warum

DeddyH 18. Jun 2012 11:57

AW: Menu Funktionen programmieren
 
Zeig mal den gesamten Code.

astiope 18. Jun 2012 11:59

AW: Menu Funktionen programmieren
 
Delphi-Quellcode:
procedure TForm1.ffnen1Click(Sender: TObject);

begin
    if dlgOpen.Execute then
  begin
    (* Hier das, was mit den Dateinamen geschehen soll *)

end;

end.

DeddyH 18. Jun 2012 12:02

AW: Menu Funktionen programmieren
 
Da fehlt ein "end;" (mit Semikolon am Ende), wie vermutet. Übrigens formatiere Delphi-Code doch bitte mit den entsprechenden Tags (der Helm im Beitragseditor), Danke.

astiope 18. Jun 2012 12:09

AW: Menu Funktionen programmieren
 
Also ich habe das Befehl end; reingeschrieben aber trotzdem stoppt es.Schreiben sie mal wie sie es sich das vorstellen.


Delphi-Quellcode:
procedure TForm1.ffnen1Click(Sender: TObject);

begin
    if dlgOpen.Execute then
end;

begin
    (* Hier das, was mit den Dateinamen geschehen soll *)

end;

end.

oder korrigieren sie mal dieses code komplett

DeddyH 18. Jun 2012 12:11

AW: Menu Funktionen programmieren
 
Delphi-Quellcode:
procedure TForm1.ffnen1Click(Sender: TObject);
begin //Anfang der Methode
  if dlgOpen.Execute then
    begin //Anfang der Abfrage
      (* Hier das, was mit den Dateinamen geschehen soll *)
    end; //Ende der Abfrage
end; //Ende der Methode

end. //Ende der ganzen Unit

astiope 18. Jun 2012 12:18

AW: Menu Funktionen programmieren
 
Der kompiler hängt trotzdem da wo if dlgOpen.Execute then geschrieben steht warum weiß ich nicht.

fehlt irgendwas ?

gruß

DeddyH 18. Jun 2012 12:20

AW: Menu Funktionen programmieren
 
Was heißt "der Compiler hängt"? Ist die Zeile rot markiert? Dann müsste auch eine Fehlermeldung zu sehen sein, die besagt, was falsch ist.

grl 18. Jun 2012 12:23

AW: Menu Funktionen programmieren
 
Zitat:

Zitat von DeddyH (Beitrag 1171379)
Delphi-Quellcode:
procedure TForm1.ffnen1Click(Sender: TObject);

      (* Hier das, was mit den Dateinamen geschehen soll *)

Diese Zeile muss natürlich durch sinnvollen Code ersetzt werden. Mach mal einfach ein // an den beginn der Zeile, dann sollte zumindest der Compiler ruhe geben und ein Dialog erscheinen...

Die Zeile schaut dann so aus:
Delphi-Quellcode:
      //(* Hier das, was mit den Dateinamen geschehen soll *)
Gruß
Luggi

PS: Und bitte: Lerne zuerst einige Grundlagen von Delphi oder Pascal. Entsprechende Links sind hier ja schon gepostet worden!

DeddyH 18. Jun 2012 12:28

AW: Menu Funktionen programmieren
 
Öhm, (* *) ist ein gültiger Kommentar, den muss man nicht noch einmal kommentieren ;)

astiope 18. Jun 2012 12:33

AW: Menu Funktionen programmieren
 
Richtig an dieser stelle ist die zeile rot markiert:

der fehler lautet: Undefinierter bezeichner dlgOpen

- wie sie es meinten habe ich schon bereits versucht aber hat nichts bei gebracht

DeddyH 18. Jun 2012 12:37

AW: Menu Funktionen programmieren
 
Zitat:

Zitat von DeddyH (Beitrag 1171349)
Pack Dir einen TOpenDialog auf Dein Formular, nenn ihn z.B. dlgOpen, ...

Das scheinst Du nicht gemacht zu haben (Eigenschaft Name im Objektinspektor auf dlgOpen geändert).

mani64 18. Jun 2012 12:40

AW: Menu Funktionen programmieren
 
Hallo,

hast du denn auch die entsprechende Komponente auf dein Formular gezogen oder nur den Code eingegeben?

Es wäre sicher hilfreich, mal den ganzen Code zu präsentieren.
Auch die empfohlenen Tutorials könnten dir weiter helfen (Grundlagen lernen).

astiope 18. Jun 2012 12:42

AW: Menu Funktionen programmieren
 
Hallo ich habe den namen was geschrieben stand in dlgOpen geändert und dann mit Enter bestätigt - erstaunlicherweise ist es immer noch rot markiert.

gruß

DeddyH 18. Jun 2012 12:44

AW: Menu Funktionen programmieren
 
Den Namen des Formulars oder den des Dialogs?

astiope 18. Jun 2012 12:46

AW: Menu Funktionen programmieren
 
den name des dialogs -

astiope 18. Jun 2012 12:49

AW: Menu Funktionen programmieren
 
Sag mal,muß man auch ein dialog fenster programmieren bevor man die passenden befehle eingibt ?

gruß

DeddyH 18. Jun 2012 12:51

AW: Menu Funktionen programmieren
 
So kommen wir irgendwie nicht weiter. Pack doch die *.pas und die dazugehörige *.dfm mal als ZIP-Archiv und hänge das an Deinen nächsten Beitrag an. Diese Raterei führt ja zu nichts.

[edit] Du musst kein Dialogfenster programmieren, die Dialog-Komponenten kapseln die Windows-Dialoge. [/edit]

astiope 18. Jun 2012 12:53

AW: Menu Funktionen programmieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
ok schau mal im anhang nach müsste alles drinn sein

gruß

DeddyH 18. Jun 2012 12:56

AW: Menu Funktionen programmieren
 
Wo ist denn da der Dialog und der gepostete Code?

astiope 18. Jun 2012 12:58

AW: Menu Funktionen programmieren
 
Hallo ich hatte dies nicht gespeichert gehabt aber wartem mal ich versuch es jetzt zu speichern und dann schicke ich es ihnen rüber sofort.

gruß

astiope 18. Jun 2012 13:00

AW: Menu Funktionen programmieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
schau mal jetzt es müsste alles drinn sein den code den sie mir geschickt haben.wenn probleme gibs frag mich.

DeddyH 18. Jun 2012 13:02

AW: Menu Funktionen programmieren
 
Zitat:

Delphi-Quellcode:
dlgOpen: TMenuItem;

Das kann ja nicht stimmen. Du solltest aus der Komponentenpalette auf dem Reiter "Dialoge" einen TOpenDialog nehmen und auf dem Formular platzieren.

astiope 18. Jun 2012 13:09

AW: Menu Funktionen programmieren
 
Hallo es tut mir wirklich leid für den ganzen chaos - jetzt habe ich den Opendialog1 im formular drauf und wenn ich dann doppelclick mache es erscheint ein fenster aber wie bekomme ich jetzt diese funktion unter der funktion Menu unter öffnen ?

DeddyH 18. Jun 2012 13:14

AW: Menu Funktionen programmieren
 
Das haben wir ganz am Anfang doch schon beschrieben. Tu Dir und uns doch bitte den Gefallen und beschäftige Dich zunächst mit den Grundlagentutorials, wir können ja nicht beim Urschleim anfangen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr.
Seite 1 von 2  1 2      

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