Danke für's Feedback.
Ja, klar. Aber, kann man das Lieschen Müller zumuten?
Ich habe übrigens nun auch eine Lösung für den Rechtsklick :
Code: Alles auswählen
EnableExplicit
Define IPGadgetDummy0, IPGadgetDummy1, IPGadgetDummy2, IPGadgetDummy3, IPGadget, Button, Event
#IPM_SETFOCUS = $468
OpenWindow(0, 0, 0, 160, 110, "test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateImage(0, 25, 20, 32) : StartDrawing(ImageOutput(0)) : DrawingMode(#PB_2DDrawing_AllChannels) : Box(0, 0, 25, 20, $00000000) : StopDrawing()
IPGadgetDummy0 = ImageGadget(#PB_Any, 30,  30, 25, 20, ImageID(0)) : GadgetToolTip(IPGadgetDummy0, "IPGadgetDummy_ToolTip")
IPGadgetDummy1 = ImageGadget(#PB_Any, 55,  30, 25, 20, ImageID(0)) : GadgetToolTip(IPGadgetDummy1, "IPGadgetDummy_ToolTip")
IPGadgetDummy2 = ImageGadget(#PB_Any, 80,  30, 25, 20, ImageID(0)) : GadgetToolTip(IPGadgetDummy2, "IPGadgetDummy_ToolTip")
IPGadgetDummy3 = ImageGadget(#PB_Any, 105, 30, 25, 20, ImageID(0)) : GadgetToolTip(IPGadgetDummy3, "IPGadgetDummy_ToolTip")
IPGadget = IPAddressGadget  (#PB_Any, 30, 30, 100, 20) : GadgetToolTip(IPGadget, "IPGadget_ToolTip") : SetGadgetState(IPGadget, MakeIPAddress(127, 0, 0, 1))  
Button = ButtonGadget       (#PB_Any, 30, 60, 100, 20, "steal the focus")
Repeat
  Event = WaitWindowEvent()
  Select Event
    Case #PB_Event_Gadget
      Select EventGadget()
        Case IPGadget
          DisableGadget(IPGadgetDummy0, 0) : DisableGadget(IPGadgetDummy1, 0) : DisableGadget(IPGadgetDummy2, 0) : DisableGadget(IPGadgetDummy3, 0)
        Case IPGadgetDummy0
          If EventType() = #PB_EventType_LeftClick  : SendMessage_(GadgetID(IPGadget), #IPM_SETFOCUS, 0, 0)
          ElseIf EventType() = #PB_EventType_RightClick : DisableGadget(IPGadgetDummy0, 1) :  mouse_event_(#MOUSEEVENTF_RIGHTDOWN,0,0,0,0) : mouse_event_(#MOUSEEVENTF_RIGHTUP,0,0,0,0) 
          EndIf
        Case IPGadgetDummy1
          If EventType() = #PB_EventType_LeftClick  : SendMessage_(GadgetID(IPGadget), #IPM_SETFOCUS, 1, 0)
          ElseIf EventType() = #PB_EventType_RightClick : DisableGadget(IPGadgetDummy1, 1) :  mouse_event_(#MOUSEEVENTF_RIGHTDOWN,0,0,0,0) : mouse_event_(#MOUSEEVENTF_RIGHTUP,0,0,0,0) 
          EndIf
        Case IPGadgetDummy2
          If EventType() = #PB_EventType_LeftClick  : SendMessage_(GadgetID(IPGadget), #IPM_SETFOCUS, 2, 0)
          ElseIf EventType() = #PB_EventType_RightClick : DisableGadget(IPGadgetDummy2, 1) :  mouse_event_(#MOUSEEVENTF_RIGHTDOWN,0,0,0,0) : mouse_event_(#MOUSEEVENTF_RIGHTUP,0,0,0,0) 
          EndIf
        Case IPGadgetDummy3
          If EventType() = #PB_EventType_LeftClick  : SendMessage_(GadgetID(IPGadget), #IPM_SETFOCUS, 3, 0)
          ElseIf EventType() = #PB_EventType_RightClick : DisableGadget(IPGadgetDummy3, 1) :  mouse_event_(#MOUSEEVENTF_RIGHTDOWN,0,0,0,0) : mouse_event_(#MOUSEEVENTF_RIGHTUP,0,0,0,0) 
          EndIf
      EndSelect
  EndSelect             
Until event = #PB_Event_CloseWindow
edit
Und, da ich nicht nur den Tooltipp sondern auch das Copy&Paste so benutzerfreundlicher finde, 
nun noch eine programmiererfreundliche Macro-Version :
Code: Alles auswählen
EnableExplicit
Define IPGadget, Button, Event
Macro  processIPGadgetDummyNr(Nr)
Case IPGadgetDummy#Nr
  If EventType() = #PB_EventType_LeftClick  : SendMessage_(GadgetID(IPGadget), #IPM_SETFOCUS, Nr, 0)
  ElseIf EventType() = #PB_EventType_RightClick : DisableGadget(IPGadgetDummy#Nr, 1) :  mouse_event_(#MOUSEEVENTF_RIGHTDOWN,0,0,0,0) : mouse_event_(#MOUSEEVENTF_RIGHTUP,0,0,0,0)
  EndIf
EndMacro
Macro processIPGadgetDummy : processIPGadgetDummyNr(0) : processIPGadgetDummyNr(1) : processIPGadgetDummyNr(2) : processIPGadgetDummyNr(3) : EndMacro  
Macro disableIPGadgetDummy : DisableGadget(IPGadgetDummy0, 0) : DisableGadget(IPGadgetDummy1, 0) : DisableGadget(IPGadgetDummy2, 0) : DisableGadget(IPGadgetDummy3, 0) : EndMacro
Macro  prepareIPGadgetDummy(x,y,w,h,ToolTip)
  Define IPAddressImage, IPGadgetDummy0, IPGadgetDummy1, IPGadgetDummy2, IPGadgetDummy3
  #IPM_SETFOCUS = $468
  IPAddressImage = CreateImage(#PB_Any,               w/4, h, 32) : StartDrawing(ImageOutput(IPAddressImage)) : DrawingMode(#PB_2DDrawing_AllChannels) : Box(0, 0, 25, 20, $00000000) : StopDrawing()
  IPGadgetDummy0 = ImageGadget(#PB_Any, x,         y, w/4, h, ImageID(IPAddressImage)) : GadgetToolTip(IPGadgetDummy0, ToolTip)
  IPGadgetDummy1 = ImageGadget(#PB_Any, x+(w/4),   y, w/4, h, ImageID(IPAddressImage)) : GadgetToolTip(IPGadgetDummy1, ToolTip)
  IPGadgetDummy2 = ImageGadget(#PB_Any, x+(w/2),   y, w/4, h, ImageID(IPAddressImage)) : GadgetToolTip(IPGadgetDummy2, ToolTip)
  IPGadgetDummy3 = ImageGadget(#PB_Any, x+3*(w/4), y, w/4, h, ImageID(IPAddressImage)) : GadgetToolTip(IPGadgetDummy3, ToolTip)
EndMacro
;- main
OpenWindow(0, 0, 0, 160, 110, "test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
prepareIPGadgetDummy(30, 30, 100, 20, "IPGadgetDummy_ToolTip")
IPGadget = IPAddressGadget  (#PB_Any, 30, 30, 100, 20) : GadgetToolTip(IPGadget, "IPGadget_ToolTip") : SetGadgetState(IPGadget, MakeIPAddress(127, 0, 0, 1)) 
Button = ButtonGadget       (#PB_Any, 30, 60, 100, 20, "steal the focus")
Repeat
  Event = WaitWindowEvent()
  Select Event
    Case #PB_Event_Gadget
      Select EventGadget()
        Case IPGadget
          disableIPGadgetDummy
          processIPGadgetDummy
      EndSelect
  EndSelect             
Until event = #PB_Event_CloseWindow