问题描述:
前几天在工控触摸屏上测试项目的时候,发现工控机一体机(屏自带触摸效果)上常按屏不放的话就会出现右键菜单栏。 而我现在的项目中有不少按钮的功能设计为点动类型,有需要常按屏幕不放的相关操作,所以会导致点动效果出不来。
之前做的项目中没有用到这种带触摸功能的工控机,鼠标操作的话,用MouseDown和MouseUp两个事件关联需要点动的按钮,就可以了而且没有任何问题。
但是换上这种带触摸功能的工控一体机,Winform框架提供的MouseDown和MouseUP这两个事件在用手去触摸工控一体的屏幕时,达不到预期的效果,相反会出现右键导航功能。如果非要触发这两个事件的话,必须先进行滑动然后再按住目标按钮(这样的动作才不会触发右键导航案例功能),才能起作用。
解决方案:
1、刚开始遇到这种情况时,认为是右键导航菜单栏干扰造成的;所以在工控屏上禁用了右键导航栏功能;操作步骤如下:
(1) 找到控制面板选项:

(2)在硬件和声音选项中

(3)笔和触摸功能块,点击设置笔势以执行某些任务选项

(4)在笔和触摸选项中,选择按下并保持设置选项,并点击设置按钮
禁用右键功能之后,发现对于按钮的功能并没有多大的作用。要触发点动按钮,还需要先进行滑动然后再按住才能触发。
2、因为之前学了一些WPF框架的知识,所以想到用WPF中的按钮来替换当前Winform中的所有点动型按钮。
然后进行了简单的测试,问题得到了解决。
(2)相关测试代码如下:

using System.Windows.Forms;namespace Touch
{public partial class Form1 : Form{public Form1(){InitializeComponent();System.Windows.Controls.Button Btn_M1014 = new System.Windows.Controls.Button(){Background = System.Windows.Media.Brushes.Black,FontFamily = new System.Windows.Media.FontFamily("宋体"),FontSize = 9F,FontWeight = System.Windows.FontWeights.Bold,Foreground = System.Windows.Media.Brushes.White,BorderThickness = new System.Windows.Thickness(3, 3, 3, 3),BorderBrush = System.Windows.Media.Brushes.White,Name = "Btn_M1014"};Btn_M1014.Content = "这是一个WPF按钮";elementHost1.Child = Btn_M1014;Btn_M1014.AddHandler(System.Windows.Controls.Button.MouseDownEvent, new System.Windows.RoutedEventHandler(Btn_MouseDown), true);Btn_M1014.AddHandler(System.Windows.Controls.Button.MouseUpEvent, new System.Windows.RoutedEventHandler(Btn_MouseUp), true);}private void Btn_MouseDown(object sender, System.Windows.RoutedEventArgs e){(sender as System.Windows.Controls.Button).Content = "松开";}private void Btn_MouseUp(object sender, System.Windows.RoutedEventArgs e){(sender as System.Windows.Controls.Button).Content = "按下";}}
}

窗口如下:

总结:
本来是用的TouchDown和TouchUp这两个事件的,但是后面发现WPF button按钮中 MouseDown和MouseUp这两个事件也是可行的,而且还可以用鼠标来操控界面的点动按钮,方便测试,所以上面我依旧还是选用了后者。

C# 关于WinForm界面在触摸屏上显示点触型按钮会引发右键导航栏功能相关推荐

  1. C# WinForm 在窗口菜单上显示已打开窗体的标题及其窗体的排列

    1. C# WinForm 在窗口菜单上显示已打开窗体的标题 设置窗体菜单的MdiList属性为 True 2.窗体的排列 Code // //  平铺 base.LayoutMdi(MdiLayou ...

  2. 使用Tslib在触摸屏上显示汉字

    终于到了在触摸屏上显示汉字了,真正写代码.测试的时间是1天,在此之前的一切准备.学习花费约2周到3周时间.而为了获取触摸屏上显示的图像,花费约2天.由于网络驱动已经接近于放弃状态,NFS用不了,只好用 ...

  3. 使用Tslib在触摸屏上显示汉字【转】

    转自:http://www.latelee.org/embedded-linux/use-tslib-to-display-chinese-character.html 终于到了在触摸屏上显示汉字了, ...

  4. Winform DevExpress控件库(三) 使用NavBarControl控件定制导航栏

    NavBarControl控件:主要作用是制作包含多个选项组并且每个组里包含多个子选项的导航栏: 位于 工具箱 -> Navigation & Layout(导航栏与布局类控件) 目录下 ...

  5. Android APP全屏显示(去掉顶部状态栏和底部虚拟导航栏)以及使用AndroidAutoSize实现自适应

    全屏显示 1.AndroidManifest设置APP样式android:theme,我项目中的Activity都是继承自Activity,如果是继承自AppCompatActivity,这里样式需要 ...

  6. 导航上显示某个地点已关闭什么意思_导航只认手机高德和百度?已经有车载导航帅到我了...

    汽车的本质是运输工具,运输人或物,本来并不需要联网,但这已成为过去式 时间的脚步已经到了 9102 年,新车上市如果不提车联网方面的建树,已然不好意思说自己是新车.但在大多数车主的印象中,似乎还是没有 ...

  7. 原文地址:一共470多例winform 界面特效的源码

    转载自:http://blog.sina.com.cn/s/blog_6cad1bf401013pnx.html 一共470多例winform 界面特效的源码. 窗体与界面设计... 9 实例001  ...

  8. 一共470多例winform 界面特效的源码

    http://blog.sina.com.cn/s/blog_69dcf6a80100uakc.html 一共470多例winform 界面特效的源码. 窗体与界面设计... 9 实例001  带历史 ...

  9. 470例 Winform界面特效的源码

    一共470多例winform 界面特效的源码. 窗体与界面设计... 9 实例001 带历史信息的菜单 10 实例002 菜单动态合并 12 实例003 像开始菜单一样漂亮的菜单... 14 实例00 ...

最新文章

  1. 病毒进入体内的48小时
  2. “自由主义教皇” 、​Linux 之父的封神之路
  3. 在WebAPI中自动创建Controller
  4. SAP Spartacus breakpoint服务中platformID的注入逻辑
  5. 孵化业务快速落地与优化
  6. iOS即时通讯输入框随字数自适应高度
  7. ORA-01658: 无法为表空间中段创建 INITIAL 区
  8. 【图像处理】图像去雾的前世今生
  9. PostgreSQL快速入门
  10. 扇贝有道180922每日一句
  11. java编程创建警告_java – 无法阻止ant生成编译器Sun专有API警告
  12. pandas——数据透视表
  13. 在Novell NetWare中支持IP
  14. 使用命令行修复windows系统
  15. 鸿蒙应用开发学习1——应用完整开发流程
  16. 【TensorFlow】官方例子mnist_with_summaries.py在windows下运行tensorboard
  17. 断点恢复执行时的设置
  18. win10 更新后蓝牙无法连接以前设备
  19. 华为发布《智能世界2030》报告,多维探索未来十年趋势
  20. SHA1加密技术文档说明

热门文章

  1. python能代替matlab吗_MATLAB替代软件 - 老牛博客
  2. ker矩阵是什么意思_矩阵形式下的最小二乘法推导
  3. mysql utf8mb4 bin_Mysql的utf8与utf8mb4区别,utf8mb4_bin、utf8mb4_general_ci与utf8mb4_unicode_ci的选择...
  4. MySQL中的 utf8 并不是真正的UTF-8编码 ! !
  5. 话费充值 php,首信易支付,电话费充值接口
  6. originpro2021导入excel(.xls)
  7. Vitalik Buterin 《以太坊紫皮书》
  8. 合数(数论基础概念)
  9. 服务器部署sas_如何在阿里云SAS上部署WordPress网站
  10. 线性代数:裁剪变换(投影变换)(一)