C# 线程间不能调用剪切板的问题
最近做一个项目,需要用到线程,而且要用到剪切板,创建了一个子线程之后发现在子线程中剪切板上获取不到数据,当时特别纳闷,上网查资料,最后终于搞定,现将解决方法归纳如下:
第一步:
public void btnAutoFocus_Click(object sender,EventArgs e)
{
Thread myThread = new Thread(msc.AutoFocusArithmetic);
//注意,一般启动一个线程的时候没有这句话,但是要操作剪切板的话这句话是必需要加上的,因为剪切板只能在单线
//程单元中访问,这里的STA就是指单线程单元
myThread .SetApartmentState(ApartmentState.STA);
myThread .Start();
}
第二步:还需要将Program启动类中
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread] //这句话保留,如果要在主线程中访问剪切板,这句式必须要的,如果要在子线程中访问剪切板,这个应该可以不要,但是默认是有的,不过这个我没有测试过不要这句话是什么结果,后面有时间测试之后再发博文
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
}
第三步:这个是读取剪切板数据,
private Image GetCaptureImage()
{
IDataObject iData = Clipboard.GetDataObject();
Image img = null;
if (iData != null)
{
if (iData.GetDataPresent(DataFormats.Bitmap))
{
img = (Image)iData.GetData(DataFormats.Bitmap);
}
else if (iData.GetDataPresent(DataFormats.Dib))
{
img = (Image)iData.GetData(DataFormats.Dib);
}
}
return img;
}
转载于:https://www.cnblogs.com/as3lib/p/6418186.html
C# 线程间不能调用剪切板的问题相关推荐
- python 调用剪切板
python 调用剪切板 import pyperclip data="这是我准备复制的内容" # 复制 只能复制字符串,使用时需要将其他数据类型的数据转化位字符串 pypercl ...
- Python调用剪切板的几种方法
最近在网上搜索Python调用剪切板的方法,得到比较多的说法是调用ctypes包中自带的函数get_clipboard和set_clipboard函数,可是但我动手实现时却发现根本没有这两个函数,于是 ...
- 【script】python调用剪切板
仅windows: import win32clipboard, win32con# 剪切板输出 def getclipboard():win32clipboard.OpenClipboard()te ...
- iPhone用户状告App厂商手脚不干净,偷窥我电脑剪切板干什么
晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI iOS 14 Beta版一出,多家App都原形毕露了. iOS 14加入了更强的隐私管理功能,如果手机App调用摄像头.麦克风,会在状态栏 ...
- java 线程resume_为什么java线程不推荐调用stop,suspend,resume方法
标签: 一.stop stop方法不推荐调用,官方说发是"可能发生不可预测的问题".其实线程在调用stop方法后,会停止自己.线程停止的时候,会直接停止执行,并释放自己正在使用的锁 ...
- 剪切板是计算机系统,剪切板
剪切板是指windows 操作系统提供的一个暂存数据,并且提供共享的一个模块.也称为数据中转站,剪切板在后台起作用,保存在内存里,是操作系统设置的一段存储区域,你是在硬盘里找不到的.你只要有文本输入的 ...
- 用python做一个剪切板助手
用Python做剪切板助手 目录 用Python做剪切板助手 程序效果图: 一.构造多线程类 二.构造剪切助手类 剪切板检测变化函数 剪切板操作函数 程序运行函数 操作模式函数 三.实例类并让程序工作 ...
- java 监控剪切板_java利用剪切板的作弊工具
背景及效果 考试又考试,考试何其多 天天为考试,万事成蹉跎 学子皆被分数累,春去秋来没快乐 朝闻老师吼,暮闻家长火 一生考试苦几何,请君听我考试歌 暑假前有个同学要上机考日语,然而对于他这种连书的目录 ...
- 【Java从零到架构师第1季】【并发 Concurrent 03】线程间通信_ReentrantLock_线程池
持续学习&持续更新中- 守破离 [Java从零到架构师第1季][并发 Concurrent 03]线程间通信_ReentrantLock_线程池 线程间通信 线程间通信-示例 可重入锁Reen ...
最新文章
- centos镜像 from_【CentOS 7.1】使用163的镜像
- 顺序队列,循环队列,链队列
- android画布缩放 移动demo,Android:画布无法缩放
- Android利用Filter过滤数据
- web中ajax实现二级联动,Ajax实现城市二级联动(一)
- fastexcel读取excel追加写入sheet页_Python写入和读取excel
- asp.net的验证控件教程
- bme280中文技术手册_Rhino 6 中文训练手册发布
- 分享几款好用到爆的 Chrome 插件!!你们不用,我寝食难安……
- linux sipp 呼叫转移_SipP绑定多IP进行注册、呼叫
- nmn对卵巢的作用,nmn吃多久对卵巢,女性知识!
- IE CSS样式的兼容性问题
- input onfocus
- 七夕撒狗粮,结婚五周年
- python批量下载txt图片批量导入到ppt
- FMDB與SQLite 數據庫應用示範:打做一隻簡單的電影資料庫 App
- 如何从twitter上爬取数据?
- P5200 [USACO19JAN]Sleepy Cow Sorting G
- python安装绘图库matplotlib_python绘图库Matplotlib的安装
- Android手机调用系统相机拍照、裁剪以及获取Url上传图片