PDA

View Full Version : contectMenu با چپ کلیک



Hossis
جمعه 19 آبان 1391, 11:28 صبح
برخی اوقات که می خواهیم منوی راست کلیک, با کلیک چپ موس هم نشون داده بشه دقیقا جای کلیک شده منو ظاهر نمیشه و به عنوان مثال گوشه سمت چپ مانیتور نشون داده می شه یعنی در نقطه 0;0
خصوصا اگر روی آیکن notify کنار ساعت ویندوز کلیک کنیم
چطور میشه که با این مشکل مواجه نشیم یعنی منوی مزبور با کلیک چپ هم به درستی و همان نقطه نشون داده بشه

xxnagin
جمعه 19 آبان 1391, 11:39 صبح
سلام
از خاصیت mousePosition استفاده میشه

If e.Button = Windows.Forms.MouseButtons.Left Or e.Button = Windows.Forms.MouseButtons.Right Then
ContextMenuStrip1.Show(MousePosition,ToolStripDrop DownDirection.Default
End If

Hossis
جمعه 19 آبان 1391, 11:42 صبح
سلام
از خاصیت mousePosition استفاده میشه

از این خاصیت هم استفاده کردم ولی در مورد notifyIcon جواب نمی ده , خود شما هم تست بکنید

xxnagin
جمعه 19 آبان 1391, 12:18 عصر
کار میکنه دیگه
شما ContextMenuStrip , icon مربوط به NotifyIcon رو ست کن
NotifyIcon1.ContextMenuStrip = ContextMenuStrip1
NotifyIcon1.Icon = Me.Icon
و در رویداد NotifyIcon1 MouseDown کد بالا حالا چه چبپ یا راست کلیک قرار بده
اینم کد کاملش

Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
NotifyIcon1.ContextMenuStrip = ContextMenuStrip1
NotifyIcon1.Icon = Me.Icon
End Sub
Private Sub NotifyIcon1_MouseDown(sender As Object, e As MouseEventArgs) Handles NotifyIcon1.MouseDown
If e.Button = Windows.Forms.MouseButtons.Left Then
ContextMenuStrip1.Show(MousePosition, ToolStripDropDownDirection.Default)
End If
End Sub
End Class

Hossis
شنبه 20 آبان 1391, 15:38 عصر
درسته , من با e.location کار میکردم که منو رو گوشه صفحه نشون می داد
با این هم امتحان می کنم امیدوارم درست بشه