欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#線程間不能調(diào)用剪切板的解決方法

 更新時(shí)間:2014年07月16日 15:51:17   投稿:shichen2014  
這篇文章主要介紹了C#線程間不能調(diào)用剪切板的解決方法,需要的朋友可以參考下

最近做一個(gè)C#項(xiàng)目,需要用到線程,而且要用到剪切板,創(chuàng)建了一個(gè)子線程之后發(fā)現(xiàn)在子線程中剪切板上獲取不到數(shù)據(jù),經(jīng)過一番查找與測試最終該問題得以解決,現(xiàn)將解決方法歸納如下,供大家參考:

第一步:

public void btnAutoFocus_Click(object sender,EventArgs e)
{
Thread myThread = new Thread(msc.AutoFocusArithmetic);
//注意,一般啟動(dòng)一個(gè)線程的時(shí)候沒有這句話,但是要操作剪切板的話這句話是必需要加上的,
//因?yàn)榧羟邪逯荒茉趩尉€程單元中訪問
//這里的STA就是指單線程單元
myThread .SetApartmentState(ApartmentState.STA); 
myThread .Start();
}

第二步:還需要將Program啟動(dòng)類中

static class Program
{
///
/// 應(yīng)用程序的主入口點(diǎn)。
///

[STAThread] //這句話保留,如果要在主線程中訪問剪切板,這句式必須要的
//如果要在子線程中訪問剪切板,這個(gè)應(yīng)該可以不要,但是默認(rèn)是有的
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
//Application.Run(new TestRGBPixelThumbForm());
//Application.Run(new TestImageForm());
//Application.Run(new TestJudgeDefinitionForm());
//Application.Run(new TestVirusForm());
}
}

第三步:這個(gè)是讀取剪切板數(shù)據(jù)

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;
}

至此問題得以解決。

相關(guān)文章

  • C#字符串自增自減算法詳解

    C#字符串自增自減算法詳解

    這篇文章主要為大家詳細(xì)介紹了C#字符串自增自減的算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 基于WPF開發(fā)簡單的顏色選擇器

    基于WPF開發(fā)簡單的顏色選擇器

    這篇文章主要介紹了如何基于WPF實(shí)現(xiàn)簡單的顏色選擇器,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)或工作有一定幫助,需要的小伙伴可以參考一下
    2023-07-07
  • C#多態(tài)詳解

    C#多態(tài)詳解

    這篇文章主要介紹了C#中的多態(tài),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • C#基礎(chǔ)知識之字符串和正則表達(dá)式

    C#基礎(chǔ)知識之字符串和正則表達(dá)式

    目前為止許多編程語言和工具都包含對正則表達(dá)式的支持,C#也不例外,下面這篇文章主要給大家介紹了關(guān)于C#基礎(chǔ)知識之字符串和正則表達(dá)式的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • Quartz.Net使用方法詳解

    Quartz.Net使用方法詳解

    本文詳細(xì)講解了Quartz.Net的使用方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • npoi2.0將datatable對象轉(zhuǎn)換為excel2007示例

    npoi2.0將datatable對象轉(zhuǎn)換為excel2007示例

    這篇文章主要介紹了npoi2.0將datatable對象轉(zhuǎn)換為excel2007示例的相關(guān)資料
    2014-04-04
  • Winform自定義控件在界面拖動(dòng)、滾動(dòng)鼠標(biāo)時(shí)閃爍的解決方法

    Winform自定義控件在界面拖動(dòng)、滾動(dòng)鼠標(biāo)時(shí)閃爍的解決方法

    這篇文章介紹了Winform自定義控件在界面拖動(dòng)、滾動(dòng)鼠標(biāo)時(shí)閃爍的解決方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • 談?wù)凜# replace在正則表達(dá)式中的意義

    談?wù)凜# replace在正則表達(dá)式中的意義

    這篇文章主要介紹了C# replace在正則表達(dá)式中的意義的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • C#中的委托、事件學(xué)習(xí)筆記

    C#中的委托、事件學(xué)習(xí)筆記

    這篇文章主要介紹了C#中的委托、事件學(xué)習(xí)筆記,本文講解了委托delegate、事件的相關(guān)知識并給出代碼實(shí)例,需要的朋友可以參考下
    2015-01-01
  • C# Access數(shù)據(jù)庫增刪查改的簡單方法

    C# Access數(shù)據(jù)庫增刪查改的簡單方法

    這篇文章主要介紹了C# Access數(shù)據(jù)庫增刪查改的簡單方法,有需要的朋友可以參考一下
    2014-01-01

最新評論