AGB  ·  Datenschutz  ·  Impressum  







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

Welche Nachricht muss ich abfangen?

Ein Thema von Chearly020664 · begonnen am 2. Jun 2021 · letzter Beitrag vom 4. Jun 2021
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#1

Welche Nachricht muss ich abfangen?

  Alt 2. Jun 2021, 22:19
hi,

in den letzten Tagen habe ich gelernt u. begriffen wie man auf Nachrichten von Fenstern reagiert.-

Jetzt muss ich auf das Maximieren von Form reagieren, sowie auf das Verkleinern.

Steht irgendwo geschrieben welche Messages wann gesendet werden?

danke - Grüße
Leo
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.960 Beiträge
 
Delphi 12 Athens
 
#2

AW: Welche Nachricht muss ich abfangen?

  Alt 2. Jun 2021, 23:24
Bei Microsoft in der MSDN Dokumentation mal geschaut?
Die WM_ Konstanten sollten da irgendwie zu finden sein denke ich.
  Mit Zitat antworten Zitat
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#3

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 02:00
Die Microsoft MSDN Doku habe ich mir intensiv angeschaut. Leider finde ich nichts was anzeigt die Form wurde maximiert oder verkleinert. Auch in Delphi 7 ist kein Ereignis zu finden.-
Microsoft Windows Programmierung ist und bleibt ein kryptisches Geheimnis für mich, komplizierter geht es nicht.

Was ich auch noch machen wollte ist:
Hier wird nach einem Resize der Form eine Neuberechnung des Bildes vorgenommen, leider auch, wenn das Fenster nur verschoben wurde. Kann man letzteres verhindern?

Delphi-Quellcode:
procedure WMEXITSIZEMOVE(var Message: TMessage); message WM_EXITSIZEMOVE;
.
.
.
procedure TForm1.WMEXITSIZEMOVE(var Message: TMessage);
begin
     inherited;
     Apfelmann1Click(self); //berechne das Bild neu
end;
Ich habe noch einiges zu machen an diesem Spaß-Programm, aber ich lerne dazu ...

Grüße
Leo
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#4

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 06:31
Moin...
Zitat:
Ich habe noch einiges zu machen an diesem Spaß-Programm, aber ich lerne dazu ...
...lernen, aber nicht mit einer Delphi Version aus 2002.

Lade dir doch die Community Edition herunter mit den neuen Sprachfeatures wie z.B. Generics.
https://www.embarcadero.com/de/produ.../free-download

  Mit Zitat antworten Zitat
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#5

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 07:52
Zitat:
Lade dir doch die Community Edition herunter mit den neuen Sprachfeatures wie z.B. Generics.
Das würde ich machen, wenn ich damit meine altern angeknabberten Delphi 7 Projekte fortführen könnte.

Grüße
Leo
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#6

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 08:14
Zitat:
Das würde ich machen, wenn ich damit meine altern angeknabberten Delphi 7 Projekte fortführen könnte
...geht alles.
Aber:
* Wie wichtig sind die Projekte für evt. Kunden?
* Manche Komponenten müssen getauscht werden. (weil es sie schlicht nicht mehr gibt)... Analyse, welche Features die alten hatten, die damals nicht verfügbar waren.
* Wie groß sind die Projekte?
* DB Anbindung modernisieren (- BDE, + Firebird etc.)

Wenn es nur "Spaßprojekte" sind, kann man mit der Umstellung auch viel lernen.
  Mit Zitat antworten Zitat
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#7

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 08:21
Zitat:
Wenn es nur "Spaßprojekte" sind, kann man mit der Umstellung auch viel lernen.
Es sind eigentlich alles nur Spaß-Projekte für mich. Allerdings habe ich einige Objekt-Pascal-Programme mit angelinkten, großen Assemblerroutinen wie Fourier-Transformationen und sowas.

Grüß
Leo
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.960 Beiträge
 
Delphi 12 Athens
 
#8

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 08:53
Zitat:
Wenn es nur "Spaßprojekte" sind, kann man mit der Umstellung auch viel lernen.
Es sind eigentlich alles nur Spaß-Projekte für mich. Allerdings habe ich einige Objekt-Pascal-Programme mit angelinkten, großen Assemblerroutinen wie Fourier-Transformationen und sowas.

Grüß
Die Assembler Sachen gehen alle noch. Du kannst mit der 10.3 CE weiterhin Win32 Programme schreiben, da geht das alles noch.
Auch die 64 Bit Version von Delphi (in der CE enthalten) kann noch Assembler, bloß halt nicht mehr als ASM Blöcke direkt
an einer beliebigen Code Stelle, sondern immer als ganze Methode/Prozedur/Funktion. Hat was mit der Aufrufkonvention oder so zu tun.

Auch die IDE der CE bietet gegenüber deinem D7 weitere Vorteile.

Und falls du wissen wiollst, welche Nachrichten dein Programm alle bekommt: es gibt eine nicht visuelle ApplicationEvents Komponente,
die kann man auf eine Form packen und dort einen Eventhandler erzeugen der alle Nachrichten sieht bevor die der eigentliche Empfänger
sieht.

Und das mit "Fenster verschieben löst auch ein Resize Event aus" könntest du behandeln, in dem du beim Programmstart die Fenstergröße
merkst und im Resize Event prüfst, ob sich die überhaupt geändert hat. Falls ja musst du dir natürlich die neue Größe merken

Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#9

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 09:08
Ja danke, ich werde mich damit nochmals beschäftigen.-

Zitat:
Und das mit "Fenster verschieben löst auch ein Resize Event aus" könntest du behandeln, in dem du beim Programmstart die Fenstergröße
merkst und im Resize Event prüfst, ob sich die überhaupt geändert hat. Falls ja musst du dir natürlich die neue Größe merken
Ok, das geht auch ...

Grüße
Leo
  Mit Zitat antworten Zitat
Benutzerbild von Chearly020664
Chearly020664

Registriert seit: 31. Mai 2021
Ort: Dorsten
17 Beiträge
 
Delphi 7 Personal
 
#10

AW: Welche Nachricht muss ich abfangen?

  Alt 3. Jun 2021, 12:39
Delphi-Quellcode:
procedure WMEXITSIZEMOVE(var Message: TMessage); message WM_EXITSIZEMOVE;
.
.
.
Form1WidthAlt:=Form1.Width;
Form1HeightAlt:=Form1.Height;
.
.
.
procedure TForm1.WMEXITSIZEMOVE(var Message: TMessage);
begin
     If (Form1.Width<>Form1WidthAlt) or (Form1.Height<>Form1HeightAlt) then
     begin
          inherited;
          Apfelmann1Click(self);
     end;
end;
Elegant ist das nicht, aber funktioniert.

Jetzt muss ich noch auf Form1-Maximieren und Form1-Verkleinern reagieren, dann bin ich mit dem Programm fertig.

Gruß
Leo
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz