Page 1 sur 1

Webgadget

Publié : ven. 12/janv./2007 12:59
par poshu
Est il possible "d'intercepter" un click droit et un click central dans un webgadget?
Je voudrais empecher l'ouverture un menu contextuel.

Merci d'avance.

Publié : ven. 12/janv./2007 14:16
par Patrick88

Code : Tout sélectionner

Procedure.b IsMouseOverGadget(gadget); #True, when the mouse is over the Gadget
  GetWindowRect_(GadgetID(gadget),GadgetRect.RECT)
  GetCursorPos_(Mouse.POINT)
  If Mouse\x>=GadgetRect\left And Mouse\x<GadgetRect\right And Mouse\y>=GadgetRect\top And Mouse\y<GadgetRect\bottom
    ProcedureReturn #True
  Else
    ProcedureReturn #False
  EndIf
EndProcedure


	
	If OpenWindow(0,0,0,400,400,"0",#PB_Window_SystemMenu)
	  If CreateGadgetList(WindowID(0))
	  	WebGadget(100,0,0,300,300,"www.google.fr")
	  EndIf

	  Repeat
	  	ev = WaitWindowEvent()
	  	
	  	If IsMouseOverGadget(100)
				If ev = #WM_MBUTTONUP
					Debug "Bouton milieu relaché"
				EndIf
				If ev = #WM_RBUTTONUP
					Debug "Bouton droit relaché"
				EndIf
				
			EndIf
				  
	  Until ev = #PB_Event_CloseWindow
	EndIf

Publié : sam. 13/janv./2007 2:10
par poshu
Oui, mais en fait, je vois pas en quoi ca m'aide ^^;

Publié : sam. 13/janv./2007 10:02
par flaith
Ce serait plutôt à mettre directement sur la page html que tu ouvres avec WebGadget(), du genre :

Code : Tout sélectionner

<script language="javascript">
  function StopRightClick() {
    if (event.button==2) {
      alert('Right Click interdit !')
    }
  }
document.onmousedown=StopRightClick
</script>
:)

Publié : sam. 13/janv./2007 12:21
par Dr. Dri
Comme ca si le mec désactive javascript sur son IE ou son Mozilla ca marche pas
faut aller voir sur le forum anglais pour le topic spécial web gadget
http://www.purebasic.fr/english/viewtop ... atch+links

Dri

Publié : sam. 13/janv./2007 13:20
par flaith
Dr. Dri a écrit :Comme ca si le mec désactive javascript sur son IE ou son Mozilla ca marche pas...
- Froide réponse -

8O je ne savais pas que le fait de modifier les paramètres de mon navigateur influencaient le comportement du WebGadget (qui n'utilise que la DLL, normalement...)

Nico

Publié : sam. 13/janv./2007 14:26
par Patrick88
euh, je pensais que c'était dans un prog purebasic...

pat

Publié : sam. 13/janv./2007 14:35
par flaith
:oops: au temps pour moi !

Publié : ven. 19/janv./2007 13:02
par brossden
Peut être un petit truc à creuser ....

Code : Tout sélectionner

  OpenWindow(0, 337, 13, 967, 863, "New window ( 0 )",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
  CreateGadgetList(WindowID(0))
  WebGadget(1, 10, 10, 940, 780, "www.google.fr")
  Repeat 
    Event = WaitWindowEvent()
    If Event <> 32770  And Event <> 275 And Event <> 280 
      Debug Event
      If Event =516 Or Event = 519
        If Event=516 : Titre.s="Clic droit Désactivé" :EndIf
        If Event=519 : Titre.s="Clic Central Désactivé" :EndIf
        MessageRequester(Titre,"Même pas en rêve") 
      EndIf
    EndIf
  Until Event = #PB_Event_CloseWindow
  End
  
(90)

Publié : mar. 01/mai/2007 13:59
par poshu
Merci brossden (j'ai que quelques mois de retard ^^; )

Publié : mar. 01/mai/2007 14:13
par minirop
brossden > ton code est aussi efficace que le code javascript (c'est à dire nul)

Publié : mar. 01/mai/2007 15:21
par poshu
absolument pas, il m'a donné tres précisément ce que j'avais demandé.

Publié : mer. 02/mai/2007 11:08
par Kwai chang caine
@Minirop

Dis donc minirop......

Je te trouve un peu incorrect envers notre ami BROSSDEN.
Par chez moi, on m'a appris que l'on ne crache pas dans la main que l'on nous tend.

Et par ailleurs, meme si ce code n'avait pas marché, ce qui n'est pas le cas, car il est génial, ce n'est pas des manieres :?
Ton post m'a quelque peu choqué, j'espere qu'il etait sur le ton de la blague 8O

Je ne suis pas grand chose dans ce forum, mais il est peuplé de gens polis et serviables, les modos font tout pour que cela se perpétue et c'est tant mieux.

@ Brossden
Moi pour ma part, je remercie BROSSDEN de son joli code.

Passe quand meme une bonne journée :wink:

Publié : mer. 02/mai/2007 11:59
par minirop
veuillez m'excusé mais je n'ai pas essayé d'être aggressif ou autre, je disais juste que le code donné est aussi facilement contournable que le code javascript (donc son efficacité est proche de 0).

Publié : mer. 02/mai/2007 12:24
par Kwai chang caine
Ya pas de mal :wink: