Als erstes musst du abfangen, welche Maustaste gedrückt wurde. Mit OnMouseDown oder so, von der Form geht das aber nicht, da die den Mausklick auf dem Kreuz nicht erhält. Windows erhält den Mausklick und sendet deiner App ein WM_CLOSE.
Ich denke das einfachste isses, wenn du die Titelleiste ausblendest und selbst eine zeichnest.
Da kannst du dann mit OnMouseDown eine Bool-Variable setzten, je nachdem welche Maustaste gedrückt wurde.
In OnCloseQuery der Form kann du dann die Variable benutzen um zu enscheiden, ob minimiert oder beendet werden soll.
Vielleicht gibts ja noch eine
API-Funktion, mit der man die zuletzt gedrückte Maustaste ermitteln kann, weiß ich aber nicht. Wenn ja, dann könnte man die Info im OnCloseQuery auswerten.
3. Idee:
Bei den Jedis gibts ne Kompo, mit der du Buttons in die Titelleiste setzten kannst. Da kannst du die Maustaste auswerten. Also BeendenButton ausblenden und nen eigenen rein.
Vielleicht hilft dir das weiter.