Zitat von
bitsetter:
Warum soll man das über die
API machen, wenn die Funktionen schon von der
VCL unter
TScreen gekapselt worden sind, oder sehe ich da was falsch?
Ja, ich finde du siehst da was falsch. Wenn ich mir TScreen etc anschaue, habe ich keine Funktion mir zu einem Formular X den Monitor heraus zu bekommen. Ich müsste die Überschneidung testen wie vorgeschlagen, oder aber ich frage einfach Windows. Die
VCL kapselt die
WinAPI Aufrufe für MultiMon etc in der
VCL, einen Teil dazu u.a. in der TScreen. Das Problem ist doch einfach nur, dass die von mir oben genannten Funktionen nicht gekapselt wurden. Warum auch immer - ob vergessen oder sonstwas.
Aber grundlegend die
WinAPI als Teufelszeug zu verschreien, nur weil ich mit viel mehr Aufwand und beschränkter Funktionalität der
VCL gleiches erreichen kann, warum? Es gibt eine einzige Funktion die genau und definiert die Aufgabenerstellung erfüllt.
Und ich habe schon extra darauf hingewiesen, dass der Rückgabewert der
WinAPI Funktion sich in den TMonitor Instanzen in der Eigenschaft
Handle wiederfindet. Ich habe nicht gesagt, dass man alles davon ausgehend mit der
WinAPI lösen sollte. Die Kombination machts, schliesslich bietet die
VCL auch genug - und für alles andere klappt das ja, nur halt an der einen Stelle bietet sie keine Lösung an.
Und einen zusätzlichen Ja Sager um es dann gleich ganz zu übertreiben braucht der Beitrag auch nicht. Schon allein sehe ich keinen Zusammenhang das Nutzung der
WinAPI gleich C als Programmiersprache fordert. Nur weil die
MSDN die Funktionen mit C dokumentiert, bedeutet dies nichts dahingehend.