| |
|
|
Jac de Lad | Yo ya alles probiert, qué me dazu eingefallen es. Weiß alguien, como yo Kontextmenü en un HTMLWin verhindern kann (Rechtsklick) y stattdessen para Ejemplo una propio Mostrar kann? Yo denke veces, el va en subclassproc, pero yo habs simplemente no hingekriegt.
Jac |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
Jac de Lad | KompilierenMarcaSeparacióndeclare html&
cls
html&=Create(HTMLWin,%hWnd,http://gamsav.xprofan.com/Gamsav,1,0,0,600,400)
SubClass html&,1
while 1
waitinput
endwhile
SubClassProc
If SubClassMessage(html&,32)
settext %hwnd,Str$(&GetTickCount)
Set(WinProc,0)
endif
ENDPROC
Damit lässt se el zwar abfangen y eventuell auch bearbeiten, aber el Kontextmenü erscheint trotzdem... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
Frank Abbing | Usted subclasst el falsche Ventana. Das Control es una Verbund mehrerer Einheiten. WM_CONTEXTMENU se en me como Fensterclass InternetExplorer_Server adecuado. Irgendwo Tuve como veces una solución, finde ellos pero no mehr en Anhieb. |
|
|
| |
|
|
|
Jac de Lad | Das seltsame es sí, dass el Message 32 en Rechtsklick gesendet y abgefangen se. Yo nehme veces a, dass el also ne otro Función ha. |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
Frank Abbing | 32? Welche Konstante es el? |
|
|
| |
|
|
|
Jac de Lad | Keine Idea. Yo me Ergebnis mittels %sMessage Mostrar dejar. |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
Frank Abbing | Lade deine Testexe veces con mi Botschafter. Dann siehst du klarer. |
|
|
| |
|
|
|
Detlef Jagolski | ¡Hola Jac,
Yo mache el siempre así: KompilierenMarcaSeparación $P+
SetErrorLevel 0
Declare appexit%
Declare Edit1&
$H WINDOWS.PH
$H MESSAGES.PH
Def EnableMenuItem(3) !USER32,EnableMenuItem
SubClassProc
If SubClassMessage(Edit1&, ~WM_CONTEXTMENU)
ConTextMenu Edit1&, hConTextMenu&, LoWord(&sLParam), HiWord(&sLParam)
Set(WinProc, 0)
ElseIf SubClassMessage(Edit1&, ~WM_COMMAND)
WMCommand Edit1&, &sWParam
Set(WinProc, 0)
EndIf
EndProc
Proc ConTextMenu
Parameters handle&, hConTextMenu&, X&, Y&
If SendMessage(handle&,~EM_GETMODIFY,0,0) = 0
EnableMenuItem (hConTextMenu&,0,~MF_BYPOSITION | ~MF_GRAYED)
Else
EnableMenuItem (hConTextMenu&,0,~MF_BYPOSITION | ~MF_ENABLED)
EndIf
If GetClip$() =
EnableMenuItem (hConTextMenu&,4,~MF_BYPOSITION | ~MF_GRAYED)
Else
EnableMenuItem (hConTextMenu&,4,~MF_BYPOSITION | ~MF_ENABLED)
EndIf
IfNot HiWord(SendMessage(handle&,~EM_GETSEL,0,0)) = LoWord(SendMessage(handle&,~EM_GETSEL,0,0))
EnableMenuItem (hConTextMenu&,2,~MF_BYPOSITION | ~MF_ENABLED)
EnableMenuItem (hConTextMenu&,3,~MF_BYPOSITION | ~MF_ENABLED)
EnableMenuItem (hConTextMenu&,5,~MF_BYPOSITION | ~MF_ENABLED)
Else
EnableMenuItem (hConTextMenu&,2,~MF_BYPOSITION | ~MF_GRAYED)
EnableMenuItem (hConTextMenu&,3,~MF_BYPOSITION | ~MF_GRAYED)
EnableMenuItem (hConTextMenu&,5,~MF_BYPOSITION | ~MF_GRAYED)
EndIf
If GetText$(handle&) =
EnableMenuItem (hConTextMenu&,7,~MF_BYPOSITION | ~MF_GRAYED)
Else
EnableMenuItem (hConTextMenu&,7,~MF_BYPOSITION | ~MF_ENABLED)
EndIf
~TrackPopupMenu(hConTextMenu&, ~TPM_LEFTALIGN | ~TPM_RIGHTBUTTON, X&, Y&, 0, handle&, 0)
EndProc
Proc WMCommand
Parameters handle&, wParam&
If wParam& = 1000
SendMessage(handle&,~EM_UNDO,0,0)
ElseIf wParam& = 1002
SendMessage(handle&,~WM_CUT,0,0)
ElseIf wParam& = 1003
SendMessage(handle&,~WM_COPY,0,0)
ElseIf wParam& = 1004
SendMessage(handle&,~WM_PASTE,0,0)
ElseIf wParam& = 1005
SendMessage(handle&,~WM_CLEAR,0,0)
ElseIf wParam& = 1007
SetFocus(handle&)
SendMessage(handle&,~EM_SETSEL,0,-1)
EndIf
EndProc
SetTrueColor 1
WindowStyle $003F
WindowTitle DesignForm
Window %maxX + 5,114 - 498,415
Cls 500
var Rueckgaengig$ = Das ist jetzt das neue Menü
var Ausschneiden$ = Ausschneiden
var Kopieren$ = Kopieren
var Einfuegen$ = Einfügen
var Loeschen$ = Löschen
var AllesMarkieren$ = Alles markieren
var hConTextMenu& = ~CreatePopupMenu()
~AppendMenu(hConTextMenu&, ~MF_STRING,1000,Addr(Rueckgaengig$))
~AppendMenu(hConTextMenu&, ~MF_SEPARATOR,101,0)
~AppendMenu(hConTextMenu&, ~MF_STRING,1002,Addr(Ausschneiden$))
~AppendMenu(hConTextMenu&, ~MF_STRING,1003,Addr(Kopieren$))
~AppendMenu(hConTextMenu&, ~MF_STRING,1004,Addr(Einfuegen$))
~AppendMenu(hConTextMenu&, ~MF_STRING,1005,Addr(Loeschen$))
~AppendMenu(hConTextMenu&, ~MF_SEPARATOR,106,0)
~AppendMenu(hConTextMenu&, ~MF_STRING,1007,Addr(AllesMarkieren$))
UseFont MS Sans Serif,13,0,0,0,0
SetDialogFont 1
Edit1&=CreateEdit(%hwnd,,117,78,121,21)
SubClass Edit1&, 1
SetWindowPos %hwnd = 207,114 - 498,415;0
WhileNot appexit%
WaitInput
If %key = 2
appexit%=1
ElseIf GetFocus(Edit1&)
ElseIf %key = 4
Fenstergröße
ElseIf %key = 5
Hilfe
EndIf
Wend
SubClass Editar1&, 0
Saludo
Detlef
P.S. WM_SETCURSOR = 32 |
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 12.07.2008 ▲ |
|
|
|
|
Jac de Lad | @Franco: Öhh, como muss Yo el Teil primero ziehen. Hast du ne gecrackte Versión?
@Detlef: Neeee, el tener Yo auch pensamiento, aber el HTMLWin envía kein WM_ContextMenu, hehehe... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
| @Jac: Schau Usted una vez que aquí a: KompilierenMarcaSeparación {$cleq}
{$compiler x11rc8}
{$runtime x11rc8}
windowStyle 512 | 8
cls
userMessages wm_eraseBkGnd,wm_close
long hMyMHook=setWindowsHookExA(7,procAddr(hpMyMH,3),hInstance,getWindowThreadProcessId(Hwnd,)),
hMyHTMLBox=create(HTMLWin,hWnd,http://gamsav.xprofan.com/Gamsav,1,,,600,400)
do {
waitinput
select uMessage
caseof wm_close
break
endSelect
}
unhookWindowsHookEx(hMyMHook)
end
hpMyMH(long _msg,_wp,_lp){
select _wp
caseof wm_rButtonDown
return true
endSelect
return /a>
}
|
|
|
| |
|
|
|
Jac de Lad | Geht fest. Funktioniert also... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 12.07.2008 ▲ |
|
|
|
|
Frank Abbing |
@Franco: Öhh, como muss Yo el Teil primero ziehen. Hast du ne gecrackte Versión?
Como, gecrackt? Der Botschafter es una Freeware-Tool de me, en todos Messages uno Programms aufzulisten.
Geht fest. Funktioniert also...
Sofort una Hook conjunto? Bin sicher, lo gab ni systemunlastige Möglichkeit, finde ellos pero no... |
|
|
| |
|
|