如图:
请教高手这样的效果怎么样实现的?

解决方案 »

  1.   


            private void button4_Click(object sender, EventArgs e)
            {
               // Point p = new Point(this.button4.Location.X+this.Location .X , this.button4.Location.Y + this.Height+this.Location .Y );
                this.button4.ContextMenuStrip .Show(this.button4 , MousePosition );
            }
      

  2.   


            private void button4_Click(object sender, EventArgs e)
            {
               // Point p = new Point(this.button4.Location.X+this.Location .X , this.button4.Location.Y + this.Height+this.Location .Y );
                this.button4.ContextMenuStrip .Show( MousePosition );
            }
    先用contextmenustrip控件设计好菜单然后为this.button4.ContextMenuStrip = this.contextMenuStrip1;
      

  3.   

    this.contextMenuStrip1.Show(this.Left +  e.X,this.Top + e.Y);
      

  4.   

    要实现有下拉菜单的按扭,就用dotnetbar第三方控件.但是你说的qq的发送按扭,至于显示菜单的位置,自己修改.我的代码,是左键显示,
      

  5.   


            private void button4_Click(object sender, EventArgs e)
            {
                this.button4.ContextMenuStrip =null;
                Point p =this.button4 .Parent  .PointToScreen (this.button4 .Location );
                p.Y += this.button4.Height;           
                this.contextMenuStrip1.Show(p);
            }其实,显示菜单this.contextMenuStrip1.Show(p);就可以了,
    不要为button设置ContextMenuStrip