| |
|
|
Clemens Meier | Hat jemand eine Idee, wie man verhindern kann, dass bei einem rechts-Klick mit der Maus in einem AtlAxWin-Control das ATL-Kontextmenu aufgeht?
Erstellt wird das Control so:
Web%=Control("AtlAxWin",Html$,$50000000,100,100,300,300,%HWnd,0,0,$200)
Also mit Weglassen von einem Stil ist es wohl nicht getan. |
|
|
| |
|
|
|
Frank Abbing | Ja. Das Control subclassen und die Message WM_CONTEXTMENU verhindern. |
|
|
| |
|
|
|
| [quote:d767e6fda1=Frank Abbing]Ja. Das Control subclassen und die Message WM_CONTEXTMENU verhindern.[/quote:d767e6fda1] Haste das mal getestet? Kann mir nicht vorstellen das dies mit COM-Objekten so geht, wäre mal interessant zu Wissen |
|
|
| |
|
|
|
Frank Abbing | Nein, nicht getestet. Ist aber die gängige Methode und ich denke, dass sie mit allen Objekten funktioniert. Ich nutze sie, um z.B. Kontextmenüs bei Multiedits zu verhindern. |
|
|
| |
|
|
|
| Hab mich mal Informiert, es soll tatsächlich gehen. MultiEdits sind ja keine Com-Objekte, da wäre es mir klar gewesen. Man lernt nie aus |
|
|
| |
|
|
|
Frank Abbing | Auch die COM-Objekte verarbeiten ganz normal Messages... |
|
|
| |
|
|
|
| Wenn Du einfach nur den Codesnippedfinder nutzen würdest...
Mir fällt nämlich auf das Du zum wiederholten Male bereits dort beantwortete Fragen stellst.
Dort habe ich die Lösung schon seit ein paar Wochen gepostet. |
|
|
| |
|
|
|
Clemens Meier | [quote:3c8fa9d06c=iF]Wenn Du einfach nur den Codesnippedfinder nutzen würdest...
Mir fällt nämlich auf das Du zum wiederholten Male bereits dort beantwortete Fragen stellst.
Dort habe ich die Lösung schon seit ein paar Wochen gepostet. [/quote:3c8fa9d06c] Weder unter Kontextmenü, noch unter ATL etwas zu finden. Wenn du etwas gepostet hättest, wieso findet man unter diesen Stichworten dann nichts? Falls du mal feststellen würdest, wie oft ich allein die Cerca benutze, würden dir deine Augen übergehen. Bevor ich überhaupt eine Frage stelle, schaue ich wirklich überall unter den Stichworten nach, die mir zu dem Thema einfallen.
Und statt zu meckern, hättest du einfacherhalber den Link posten können. |
|
|
| |
|
|
|
| Schau entweder unter
a) HTML b) RECHTE c) MAUS d) HOOK
oder
e) SPERREN
nach.
Unter all diesen 5 Schlagworten wirst Du fündig.
Man darf sich halt nicht drauf beschränken zu glauben das etwas grad unter dem Schlagwort gepostet ist was man selbst per entscheident halten würde. Versuche Dir einfach vorzustellen was der Codesnippetposter per Schlagworte im Titel wählen würde.
Wenn Du also ein Problem mit der rechten Maustaste hast, schau einfach unter Rechte nach, und nicht nur unter ATL oder Kontext. |
|
|
| |
|
|
|
Clemens Meier | Ich habe kein Problem mit der rechten Maustaste, meine funktioniert. Es geht um das Kontextmenu, welches man leicht auch mit der linken oder mittleren Maustaste erreicht. Warum also soll ich nach der rechten Maustaste suchen? Macht nicht wirklich Sinn! Und wie soll ich auf Hook kommen? (Abgesehen davon, was ist überhaupt ein Hook?). Unter HTML habe ich in der Cerca nachgesehen, doch nichts in der Richtung gefunden. Vielleicht solltest du die Cerca entsprechend erweitern, dass auch Beiträge in den Codesnippes gefunden werden.
Außerdem ist dein Beitrag mal wieder undokumentiert, selbst mit Kommentaren innerhalb des Quelltextes bist du äußerst sparsam. So kommt die Variable R% vor, Entweder ist die 1 oder 0. Wie kommt man an die anderen Messages wie getFocus? Zudem funktioniert createhtmlbox bei mir nicht. Profan 10 ? Welche Stils stecken dahinter? Und was mache ich mit den anderen Elementen des Dialogs? Wird damit nur die rechte Maustaste abgefangen und andere werden normal behandelt? ...
Das Beispiel von Frank mit dem subclassing ist mir tatsächlich verständlich, auch wenn ich keine Ahnung habe, was subclassing bedeutet. Ich nehme einfach mal an, dass mit subclassing die Ersetzung der eigentlichen Routine gemeint ist, also eher ein replaceclassing
[quote:171dc9098d]Mir fällt nämlich auf das Du zum wiederholten Male bereits dort beantwortete Fragen stellst.[/quote:171dc9098d] Welche noch? Die Ankündigung zum Chat, das Problem mit dem SK-Control? Welche Frage meinst du? |
|
|
| |
|
|
|
| Du stellst mein Wink auf die Codesnippets falsch - ja sogar böse dar - - bitte betrachte mein Initialposting.
Es gibt auch keinen Grund sich persönlich angegriffen zu fühlen - hier ist also keine Rechtfertigung Deinerseits nötig.
Deine Ausgangsfrage war: [quote:aecc895a6e]Hat jemand eine Idee, wie man verhindern kann, dass bei einem rechts-Klick mit der Maus in einem AtlAxWin-Control das ATL-Kontextmenu aufgeht?[/quote:aecc895a6e] Warum Du mir jetzt vermitteln musst: Ich habe kein Problem mit der rechten Maustaste verstehe ich nicht.
Alles was ich versuche Dir zu vermitteln ist: Wenn es dir darum geht die rechte Maustaste zu sperren schaue unter den Codenippets unter Rechte oder Maustaste nach - denn dort steht die Lösung.
Der Wink von Frank (SubClassing) ist zwar schlüssig - funktioniert aber nicht da das Control a) nicht nur 1 Control ist und b) M$ da wohl selbst einige Spielereien eingebaut hat welche das SubClassing verhindern.
In diesem Fall hilft nur ein Hook - aber ich kann mich naturalmente auch irren.
Genau dieses Thema ist aber sehr sehr oft angesprochen worden, auch im Phorum von Roland. Lange Zeit gabs dafür zwar Anregungen aber keine Lösungen. Erst kürzlich gelang es mir einen knackigen Source zu backen welcher genau dieses Thema erschlägt.
Das ich mit Kommentaren spare sei mir gestattet solange ich nicht mit den Kommentaren spare wie leider die meisten mit den Codesnippets. Im übrigen steht es jedem Frei nichtkommentierte Sources zu kommentieren und neu-zu-posten. Aber das macht ja schliesslich auch keiner... |
|
|
| |
|
|
|
Clemens Meier | Lieber iF, ich erspare mir hier jetzt wohlwissend meinen Kommentar. Aber als Hinweis: Ich benutze kein XPSE. Viele anderen benutzen kein XPSE. Na? Funkts.
Und was ein Hook ist, weiß ich immer noch nicht, genauso wenig was die Zahl $204 in deinem Posting bedeutet und woher die Prozedur weiß, dass er auf meine HTML-Box reagieren soll bzw. was es mit dem Return-Wert auf sich hat. Und da ich noch zahlreiche andere Controls hat, muss man da auch eigene Prozeduren schreiben .......... ?. |
|
|
| |
|
|