jxl导出excel报表实例
2007-12-29 14:56
344 查看
使用C#打造自己的视频播放器,可以支持当前流行的各种视频格式,包括wmv,avi,rm rmvb等等(前提是你机器上有足够多的视频解码包)。下面是我写的一个程序,包括打开设备播放、暂停、停止、关闭设备、得到当前的播放状态。
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace client
{
class MMPlayer
{
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand,
StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);
public static string sCommand;
public static IntPtr picPtr; //要播放的句柄,可以是任何的
private static int Flag = 1;
/// <summary>
/// 打开设备播放
/// </summary>
/// <param name="sFileName">要播放的视频文件名</param>
/// <returns>返回视频大小(时间)</returns>
public static StringBuilder Play(string sFileName)
{
StringBuilder time = new StringBuilder(128);
string avi = sFileName.Substring(sFileName.IndexOf('.') + 1).ToLower();
if (avi != "avi")
{
sCommand = "open /"" + sFileName + "/" type mpegvideo alias MediaFile parent " + picPtr.ToString() + " style child ";
}
else
{
sCommand = "open /"" + sFileName + "/" type avivideo alias MediaFile parent " + picPtr.ToString() + " style child ";
}
Console.WriteLine(sCommand);
sCommand = "put MediaFile window client at 0 0 " + pictureBox1.Width + " " + pictureBox1.Height;
mciSendString(sCommand, null, 0, picPtr);
sCommand = "play MediaFile";
mciSendString(sCommand, null, 0, picPtr);
return time;
}
/// <summary>
/// 停止
/// </summary>
public static void Stop()
{
sCommand = "stop MediaFile";
mciSendString(sCommand, null, 0, picPtr);
}
/// <summary>
/// 关闭设备
/// </summary>
public static void Close()
{
sCommand = "close MediaFile";
mciSendString(sCommand, null, 0, picPtr);
}
/// <summary>
/// 暂停、继续
/// </summary>
public static void Pause()
{
if (Flag == 1)
{
sCommand = "Pause MediaFile";
mciSendString(sCommand, null, 0, picPtr);
Flag = 0;
return;
}
else
{
sCommand = "play MediaFile";
mciSendString(sCommand, null, 0, picPtr);
Flag = 1;
}
}
/// <summary>
/// 得到当前的播放状态
/// </summary>
/// <returns></returns>
public static StringBuilder CurrentStatus()
{
StringBuilder status = new StringBuilder(128);
mciSendString("status MediaFile mode", status, 128, picPtr);
return status;
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace client
{
class MMPlayer
{
[DllImport("winmm.dll")]
private static extern long mciSendString(string strCommand,
StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);
public static string sCommand;
public static IntPtr picPtr; //要播放的句柄,可以是任何的
private static int Flag = 1;
/// <summary>
/// 打开设备播放
/// </summary>
/// <param name="sFileName">要播放的视频文件名</param>
/// <returns>返回视频大小(时间)</returns>
public static StringBuilder Play(string sFileName)
{
StringBuilder time = new StringBuilder(128);
string avi = sFileName.Substring(sFileName.IndexOf('.') + 1).ToLower();
if (avi != "avi")
{
sCommand = "open /"" + sFileName + "/" type mpegvideo alias MediaFile parent " + picPtr.ToString() + " style child ";
}
else
{
sCommand = "open /"" + sFileName + "/" type avivideo alias MediaFile parent " + picPtr.ToString() + " style child ";
}
Console.WriteLine(sCommand);
sCommand = "put MediaFile window client at 0 0 " + pictureBox1.Width + " " + pictureBox1.Height;
mciSendString(sCommand, null, 0, picPtr);
sCommand = "play MediaFile";
mciSendString(sCommand, null, 0, picPtr);
return time;
}
/// <summary>
/// 停止
/// </summary>
public static void Stop()
{
sCommand = "stop MediaFile";
mciSendString(sCommand, null, 0, picPtr);
}
/// <summary>
/// 关闭设备
/// </summary>
public static void Close()
{
sCommand = "close MediaFile";
mciSendString(sCommand, null, 0, picPtr);
}
/// <summary>
/// 暂停、继续
/// </summary>
public static void Pause()
{
if (Flag == 1)
{
sCommand = "Pause MediaFile";
mciSendString(sCommand, null, 0, picPtr);
Flag = 0;
return;
}
else
{
sCommand = "play MediaFile";
mciSendString(sCommand, null, 0, picPtr);
Flag = 1;
}
}
/// <summary>
/// 得到当前的播放状态
/// </summary>
/// <returns></returns>
public static StringBuilder CurrentStatus()
{
StringBuilder status = new StringBuilder(128);
mciSendString("status MediaFile mode", status, 128, picPtr);
return status;
}
}
}
相关文章推荐
- 通过jxl.jar 读取、导出excel的实例代码
- 关于Jxl导出excel的简单实例
- Acey.ExcelX实例演练(1)—从GridView中导出Excel报表
- Spring (八) 使用jxl导入导出excel实例及其在spring mvc中的应用
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- java中使用jxl导入导出excel实例及其在spring mvc中的应用
- jxl 导出数据到excel的实例讲解
- Acey.ExcelX实例演练(2) -- 从ListView[应该为ListView]中导出Excel报表
- java导出excel,以及相关实例jxl ,插入图片,指定格式文字
- 实现各种文件的下载方法:用于 WEB上的报表导出(jxl 实现Excel报表下载),核心思想就是将文件的输出流传给HttpResponseOutputStream 里就成了。
- [水晶报表]导出PDF or Excel,并返回文件到用户的IE浏览器中
- jxl导出Excel最全面的解释
- Java导出数据为EXCEL的两种方式JXL和POI
- Excel导出java实例(有模板)
- 报表导出到excel
- 利用JXLS根据模板导出Excel实例教程
- Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验
- jxl做excel报表
- datagridview导出excel报表函数