为了方便我打字,统一一下术语,我会以XC来代替炫彩。
从现在开始我们就进入了C#开发炫彩界面库的学习历程了,为了让大家都炫彩界面库有一个直观的认识,还是先从最简单的Hello World!开始,下面就跟随我开始第一个C#炫彩程序吧!
你需要准备的是VS2008开发环境,XC库已经编译好的DLL库。如果你已经装备好了,那我们就开始吧!
首先,我们新建一个C#的windows窗体应用程序项目,取名为XC_Csharp
新建的工程中会自动生成Form1,我们不需要,将其删除掉,另外Program.CS中的代码我们也不需要,删除掉,最终效果图为
到此我们的工程就已经完成了,下面我们要进行的就是对XC界面库API的封装,我们新建一个文件夹为xc,添加一个xcapi.cs的文件。
xcapi.cs内容如下:
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
public static class XCAPI
{
private const string XcDllName = "xcgui.dll";
[DllImport(XcDllName)]
public static extern bool XInitXCGUI(string pText);
[DllImport(XcDllName)]
public static extern void XRunXCGUI();
[DllImport(XcDllName, CharSet = CharSet.Unicode)]
public static extern IntPtr XWnd_CreateWindow(int x, int y, int cx, int cy, string pTitle, IntPtr hWndParent, int XCStyle);
[DllImport(XcDllName)]
public static extern bool XWnd_ShowWindow(IntPtr hWindow, int nCmdShow);
[DllImport(XcDllName, CharSet = CharSet.Unicode)]
public static extern IntPtr XStatic_Create(int x, int y, int cx, int cy, string pTitle, IntPtr hParent);
[DllImport(XcDllName)]
public static extern void XEle_SetBkTransparent(IntPtr hEle, bool bTran);
}
program.cs内容如下:
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace XC_Csharp
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
XCAPI.XInitXCGUI(null);
IntPtr hwnd = XCAPI.XWnd_CreateWindow(0, 0, 400, 300, "第一个窗体", IntPtr.Zero, 1791);
XCAPI.XWnd_ShowWindow(hwnd, 1);
IntPtr hStatic = XCAPI.XStatic_Create(10, 10, 100, 100, "Hello World!", hwnd);
XCAPI.XEle_SetBkTransparent(hStatic, true);
XCAPI.XRunXCGUI();
}
}
}
到目前为止我们就完成第一个炫彩的程序,点击运行,会出现如下界面
这里要说明一下的是,xcgui.dll文件需要放在运行目录下,另外64位机器请设置编译为X86的程序, 否则无法运行。配置如下。
通过这一节的学习,我相信大家都C#编写XC有了一定的了解, 从下节起,我将一步一步教大家封装XC界面库,大家从我这里不仅能学习到XC界面库的开发,另外对面向对象的封装、继承、设计等方面 都会有很大的提高。