Click here to Skip to main content
15,921,905 members
Home / Discussions / C#
   

C#

 
Generalproblem with inf file Pin
Srikar Y30-Sep-03 0:35
Srikar Y30-Sep-03 0:35 
GeneralRe: problem with inf file Pin
Heath Stewart30-Sep-03 2:02
protectorHeath Stewart30-Sep-03 2:02 
GeneralWeb Services proxy class Pin
sneaky90930-Sep-03 0:08
sneaky90930-Sep-03 0:08 
GeneralRe: Web Services proxy class Pin
Ryan_Roberts30-Sep-03 1:09
Ryan_Roberts30-Sep-03 1:09 
Questionremoting server in console app? Pin
Roger Alsing29-Sep-03 22:37
Roger Alsing29-Sep-03 22:37 
AnswerRe: remoting server in console app? Pin
Blake Coverett29-Sep-03 23:09
Blake Coverett29-Sep-03 23:09 
GeneralRe: remoting server in console app? Pin
Roger Alsing29-Sep-03 23:31
Roger Alsing29-Sep-03 23:31 
GeneralControl Key Combo Pin
deanoA29-Sep-03 20:40
deanoA29-Sep-03 20:40 
GeneralRe: Control Key Combo Pin
Heath Stewart30-Sep-03 2:16
protectorHeath Stewart30-Sep-03 2:16 
QuestionPicture & Streamer : closed or not? Pin
Stephane David29-Sep-03 20:24
Stephane David29-Sep-03 20:24 
GeneralCallling a dll in COM+ Component Pin
Member 83727229-Sep-03 20:16
Member 83727229-Sep-03 20:16 
GeneralSave a picture Pin
Birdy29-Sep-03 18:43
Birdy29-Sep-03 18:43 
GeneralRe: Save a picture Pin
J. Dunlap29-Sep-03 19:20
J. Dunlap29-Sep-03 19:20 
GeneralCopy file to server Pin
Anonymous29-Sep-03 10:17
Anonymous29-Sep-03 10:17 
GeneralRe: Copy file to server Pin
Daniel M. Edwards29-Sep-03 10:20
Daniel M. Edwards29-Sep-03 10:20 
GeneralTaskbar window button Pin
blade29-Sep-03 9:02
blade29-Sep-03 9:02 
QuestionWhich NUD called this MenuItem? Pin
james-cxx29-Sep-03 8:52
james-cxx29-Sep-03 8:52 
AnswerRe: Which NUD called this MenuItem? Pin
james-cxx29-Sep-03 13:16
james-cxx29-Sep-03 13:16 
Generalpostioning of printer dialog Pin
trythat29-Sep-03 8:06
trythat29-Sep-03 8:06 
GeneralRe: postioning of printer dialog Pin
Heath Stewart29-Sep-03 9:01
protectorHeath Stewart29-Sep-03 9:01 
Generaltoolbar rightclick Pin
trythat29-Sep-03 8:03
trythat29-Sep-03 8:03 
GeneralRe: toolbar rightclick Pin
Heath Stewart29-Sep-03 8:43
protectorHeath Stewart29-Sep-03 8:43 
Other than overriding the Toolbar class and using Win32 messages to do some of this, or using a pre-canned and much-better toolbar out there (like from Magic controls), there is a completely managed way of doing this.

Hook-up an event handler for either the Click event, or the MouseUp or MouseDown events. Using the Click event does warrant some extra code, but gives you some things for free (like detecting if the user escaped and message before you handle the "up" event). You can get the screen coordinates using the Click event, then use Control.MousePosition to get the screen coordinates, then use Control.PointToClient to get the form coordinates. If you use one of the Mouse* events, you are given the form coordinates.

Then, pass the Point to a function like so:
private ToolbarButton GetButtonFromPoint(Point p)
{
  foreach (ToolbarButton btn in myToolbar.Buttons)
  {
    Rectangle r = myToolbar.RectangleToClient(btn.Rectangle);
    if (r.Contains(myToolbar.PointToClient(p)))
      return btn;
  }
  return null;
}
You might have to fiddle with the coordinate conversion a little to make sure it works. This code is untested but should give you the basic idea.

 

-----BEGIN GEEK CODE BLOCK-----
Version: 3.21
GCS/G/MU d- s: a- C++++ UL@ P++(+++) L+(--) E--- W+++ N++ o+ K? w++++ O- M(+) V? PS-- PE Y++ PGP++ t++@ 5 X+++ R+@ tv+ b(-)>b++ DI++++ D+ G e++>+++ h---* r+++ y+++
-----END GEEK CODE BLOCK-----
GeneralGDI+ Dashed line Pin
gadgetfbi29-Sep-03 7:35
gadgetfbi29-Sep-03 7:35 
GeneralRe: GDI+ Dashed line Pin
Heath Stewart29-Sep-03 9:04
protectorHeath Stewart29-Sep-03 9:04 
GeneralRe: GDI+ Dashed line Pin
Daniel M. Edwards29-Sep-03 10:25
Daniel M. Edwards29-Sep-03 10:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.