Tag: 剪贴板

用Java中的多种格式设置系统剪贴板

我知道,如何以一种格式(如文本或图像数据)的数据设置系统剪贴板。 但是我想以多种格式将数据写入系统剪贴板。 在我的应用程序中,我想用CSV文本和XML格式(Excel方言)编写表格的内容。 问题是,每一个电话 Toolkit.getDefaultToolkit().getSystemClipboard() .setContents(new StringSelection(text), this) replace以前的剪贴板内容。 有没有一个技巧,如何在Java中设置多种格式的系统剪贴板?

在ASPX webapp中使用服务器端剪贴板的问题

我有一个运行服务器端的报告应用程序,它从我的数据库中读取一个存储的BMP(作为一个字节[]),将其转换回一个图像,然后将其放入一个Excel电子表格中,这个电子表格构成了这个报告的基础(这个报告最终传递给客户端下载。)为此,我试图使用服务器端剪贴板来处理图像的“粘贴”到工作表中的特定范围。 这是代码片段 – System.Drawing.Image image; Bitmap bm; Graphics g; Excel.Range range; MemoryStream ms = new MemoryStream(graphRecs.ElementAt(0).Graph, 0, graphRecs.ElementAt(0).Graph.Length); ms.Write(graphRecs.ElementAt(0).Graph, 0, graphRecs.ElementAt(0).Graph.Length); image = System.Drawing.Image.FromStream(ms, true); bm = new Bitmap(413, 130); g = Graphics.FromImage(bm); g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; g.DrawImage(image, 0, 1, 413, 130); Clipboard.SetDataObject(bm, false, 4, 250); range = ws.get_Range(cBlkPtr[6, 2], cBlkPtr[6, 2]); ws.Paste(range, bm); Clipboard.Clear(); 在VS2008下的debugging模式下运行它似乎工作正常 […]

Excel中的数据types评估到ASP.NET复制/粘贴操作

我认为我的问题的答案可能是,这是不可能的,但我正在一个跨国ASP.NET应用程序,其中用户将要从一个Excel工作表中复制一列数字到一个networkingGridView。 这可能来自任何客户端操作系统,我们希望避免任何客户端插件等。 问题是,在许多国家,小数和千分位数的分隔符完全颠倒过来。 例如,在德国,999.999.999,999的值在美国翻译为999,999,999.999。 对于不知道格式和/或位置编号偏好的原始文本“999,999”,不知道它应该是(美国格式)999,999.000还是999.999。 就我所能确定的,在从操作系统剪贴板到网页的复制/粘贴操作中,没有办法传送底层的原始Excel数据和数据types,例如没有这些文本分隔符的数字。 数据传输的唯一方式是通过格式化的文本。 任何人都知道,否则可以提供有益的build议?

从Excel OLE对象获取图像(图元文件)C#

我正在做一个添加到Excel在OLE对象上执行一些操作。 它需要从工作表中编程embeddedOLE对象的一些数据(从mathtypes转换为TeX语言)。 到目前为止,我已经处理了大部分问题,如将其添加到Excel工作表,从mathtypesOLE对象中获取公式,并设置公式。 但是还有最后一件事情要做。 我需要提取mathtypes的OLE对象所设置的公式的图像的图元文件。 我想提取图像并将其保存为内存位图,然后以某种控件显示。 问题是 – 我有代码从OLE对象获取图元文件: MTSDKDN.MathTypeSDK.IOleObject oleObject = null; oleDataObject = dataObject as IDataObject; oleObject = dataObject as MTSDKDN.MathTypeSDK.IOleObject; ConnectFORMATETC formatEtc = new ConnectFORMATETC(); ConnectSTGMEDIUM stgMedium = new ConnectSTGMEDIUM(); DataFormats.Format dataFormat; obj.Verb((Excel.XlOLEVerb)3); dataObject = obj.Object; formatEtc.cfFormat =(Int16)DataFormats.GetFormat(DataFormats.MetafilePict ).Id; formatEtc.dwAspect = System.Runtime.InteropServices.ComTypes.DVASPECT.DVASPECT_CONTENT; formatEtc.lindex = -1; formatEtc.ptd = (IntPtr)0; formatEtc.tymed = TYMED.TYMED_MFPICT; stgMedium.unionmember=(IntPtr)0; […]

如何阅读从Excel复制到剪贴板使用Python的表格数据?

是否有可能从Excel复制到列表,元组或字典使用Python的表格数据? 数据将包含多个行和列,例如范围A1:B10 ,因此python数组也应该包含行和列索引信息

系统剪贴板上的包装

我正在开发一个应用程序,它要求每当一个特定的项目被复制时,它的内容在被放置到系统剪贴板之前被修改。 在这里,整个意图是不要与其他应用程序共享这些数据,以防被用户意外复制/粘贴。 如果他们遇到同样的问题,有人可以抛出一些灯光吗? 谢谢。

XML Spreadsheet复制到vb.net中的剪贴板并带有特殊字符

我可以使用以下代码将一些Excel数据(XML Spreadsheet格式)粘贴到剪贴板: Dim textToPaste as String = GetMyXMLFormattedText() Dim dataobj As New DataObject Dim xmlStream as new IO.MemoryStream() xmlStream.Write(System.Text.ASCIIEncoding.ASCII.GetBytes(textToPaste), 0, textToPaste.Length) dataObj.SetData("XML Spreadsheet", xmlStream) Clipboard.SetDataObject(dataObj) textToPaste是类似的东西 <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" … </Worksheet> </Workbook> 这个例子可行,但如果我在我的文档中有“é”这样的特殊字符,我会得到一些“?”。 我试图用其他格式来写我的stream System.Text.UTF32Encoding.UTF32.GetBytes 和许多其他可用,或使用TextToPaste GetByteCount技术,但当我尝试粘贴到Excel,我总是得到一个错误告诉我,我不能粘贴这些数据。 是否可以使用XML电子表格格式粘贴除ASCII之外的其他内容? 谢谢

如何以编程方式访问从剪贴板复制的select地址

这是我想要达到的: 用户复制一个单元格(或范围),比如说A3,当她点击一个button时,我需要通过编程访问单元格的地址(创build一个链接)。 以文本格式访问剪贴板非常简单: string clip; if (Clipboard.ContainsText()) clip = Clipboard.GetText(); 我也发现可以像这样以不同的格式访问剪贴板 var dataObj = Clipboard.GetDataObject(); var format = DataFormats.CommaSeparatedValue; if (dataObj != null && dataObj.GetDataPresent(format)) { var csvData = dataObj.GetData(format); //… } 但我不能为我的生活find哪个格式包含链接和如何得到它。 (我循环通过Clipboard.GetDataObject()提供的所有格式。GetFormats(),但一些返回的不可思议的stream,我无法理解。 背景信息: 答:链接必须在那里,因为我可以使用“粘贴链接”,它创build一个绝对的参考 B.我正在使用Excel 2010和VS2010 – Win7下的C# C.代码在自定义任务窗格中运行 任何帮助感激! 所以, 并感谢所有设法读到这一点的人。 我终于弄明白了。 我的解决scheme仍然很尴尬,因为我无法从剪贴板中获得stream的实际结构,但是我发现我在寻找什么: protected override void WndProc(ref Message m) { const int […]

适用于Excel的HTML剪贴板格式

我写我的应用程序的导出工具从表中复制几个单元格,并将该单元格粘贴到Microsoft Excel(谷歌文档,libreoffice钙)。 我使用内容types的文本/ HTML我的剪贴板复制单元格背景颜色。 如何标记来源(我的应用程序)中的表格单元格,以不覆盖目标(即Excel中)足够的单元格 示例复制scheme是:(#是任何值,而不是 – 覆盖值) ###-# -#### —## ##### 现在,如果我只填写空的<td></td> ,当我将表格粘贴到excel中时,单元格将覆盖现有的单元格并将它们清空。 它可以工作,如果我使用内容types的文本/ CSV,因为我可以把许多分隔符(即\t )没有传递的价值,即: #\t#\t#\t\t\t\t# //some values are omitted #\t#\t#\t#\t\t\t //some values are omitted 是否有可能把表格放入HTML剪贴板? 表格包含一些空单元格,并且空单元格在粘贴到Excel时不应覆盖非空单元格。

从外部应用程序调用子程序

我已经耗尽无数尝试获得一个string匹配当前的剪贴板数据。 如果我用F8逐步执行我的子程序,它可以完美地工作,但即使使用sleep和application.wait命令,我也无法获取string来更新到剪贴板值,而我的string将继续输出一个较老的string。 我的下一个debugging解决scheme是我在外部应用程序中创build一个子例程,这个过程就像这样简单: sub GetClipboardData() Dim CB as String CB = Clipboard End Sub 这个其他应用程序允许我得到剪贴板数据,就像这样简单,没有声明或设置剪贴板数据对象,而且恰巧我当前的项目正在使用这个应用程序,而且程序已经在Excel中Set ATC = GetObject(, "ATWin32.AccuTerm")为Set ATC = GetObject(, "ATWin32.AccuTerm") 我想从AccuTerm call GetClipboardData()子例程,然后将该子variablesCB返回给Excel。 这是一个马虎的做事方式,如果有任何其他的build议,在Excel里面这样做,而不是我打开。 我不希望任何人阅读所有这些 (或者理解这件事),而且在我原来的问题中没有必要 – 但是我将其包括在内,以防有人想打更大的问题,而不是打电话给外部分支。 。 #If VBA7 Then ' Excel 2010 or later Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal Milliseconds As LongPtr) #Else ' Excel 2007 […]