SGHNetMultiLang




Dll库命令介绍
SetShowLang()

设置显示语言

F()

翻译内容

Mu()

翻译内容扩展方法

ReadLangShow()

使用上次设置的语言进行显示

SysReadLang()

返回上次设置的语言字符串

EanbledCach

设置是否开启缓存

IsOutLog()

是否开启输出系统日志

Cach_Clear()

清空缓存

Cach_Get()

获取已缓存列表

GetLangName()

获取多语言系统支持所有语言名称 例如:en ja

GetLangName_CuList()

获取所有语言支持的区域列表

GetShowName_NativeName()

获取对应语言本地化语言名称列表

GetShowName_NativeName()

获取对应语言本地化语言语种名称

NoMuSCan

设置跳过扫描或同步的 模块 类 方法 属性类

常见问题
Dll库文件在哪里? 该引用那个DLL库?
SetShowLang()

描述:设置显示语言

说明:可在程序启动初设置当前应用程序显示语言

使用案例

C#

public Form1()
{
MultiLangDll.QtLang.SetShowLang("en");
InitializeComponent();
}

VB.Net

Sub New()
MultiLangDll.QtLang.SetShowLang("en")
InitializeComponent()
End Sub

备注:启动参数位置 可 VS项目属性-启动对象 进行查看 如使用窗口多语言需在 InitializeComponent() 前设置显示以便正常加载显示

F()

描述:翻译内容

说明:获取对应多语言内容

使用案例

C#

String VShow = MultiLangDll.QtLang.F("用户名称");
MessageBox.Show(VShow);

如文件内已导入 MultiLangDll命名空间 可直接调用方法使用

String VShow = F("用户名称");
MessageBox.Show(VShow);

VB.Net

Dim VStr As String = MultiLangDll.QtLang.F("用户姓名")
MsgBox(VStr)

如文件内已导入 MultiLangDll命名空间 可直接调用方法使用

Dim VStr As String = F("用户姓名")
MsgBox(VStr)

备注:推荐使用Mu()扩展方法更便于使用,例如:"用户姓名".Mu(),使用Mu()请确保文件内已导入MultiLangDll命名空间

备注:在获取内容时请确保已在项目启动初始函数SetShowLang()设置显示语言并项目根目录内已存在对应语言文件

Mu()

描述:翻译内容扩展方法

说明:获取对应多语言内容 功能与F()方法相同

使用说明:使用前请确保 如文件内已导入 MultiLangDll 命名空间

使用案例

C#

String VShow = "用户名称".Mu()+"电话".Mu()+"地址".Mu();
MessageBox.Show(VShow);
MessageBox.Show("用户名称".Mu());

VB.Net

Dim VStr As String = "用户姓名".Mu() + "电话".Mu() + "地址".Mu()
MsgBox(VStr)
MsgBox("用户姓名".Mu())

备注:在获取内容时请确保已在项目启动初始函数SetShowLang()设置显示语言并项目根目录内已存在对应语言文件

ReadLangShow()

描述:使用上次设置的语言进行显示

说明:设置使用上次SetShowLang()设置的显示语言进行显示

使用说明:此参数可用在 SetShowLang()在语言选择界面进行设置,ReadLangShow()在启动时读取用户选择的语言进行显示

使用案例

C#

public Form1()
{
MultiLangDll.QtLang.ReadLangShow();
InitializeComponent();
}

VB.Net

Sub New()
MultiLangDll.QtLang.ReadLangShow()
InitializeComponent()
End Sub

备注:可以理解为读取了上次SetShowLang()设置的语言,再次应用SetShowLang()进行进行显示

SysReadLang()

描述:返回上次设置的语言字符串

说明:获取使用SetShowLang()设置的显示语言字符串表现形式

使用案例

C#

MultiLangDll.QtLang.SetShowLang("en");
string lang = MultiLangDll.QtLang.SysReadLang();

lang结果返回"en"

VB.Net

MultiLangDll.QtLang.SetShowLang("en")
Dim lang As String = MultiLangDll.QtLang.SysReadLang()

lang结果返回"en"

EanbledCach()

描述:设置是否开启缓存

说明:设置是否在程序内缓存已翻译内容,以便后续更快速读取,默认为开启

使用案例

C#

MultiLangDll.QtLang.EanbledCach=true;

VB.Net

MultiLangDll.QtLang.EanbledCach=true

备注:如果使用动态语言切换请在启动关闭缓存,已防止显示为未切换语言的缓存内容

IsOutLog()

描述:是否开启输出系统日志

说明:是否输入日志信息,默认为关闭

使用案例

C#

MultiLangDll.QtLang.IsOutLog=true;

VB.Net

MultiLangDll.QtLang.IsOutLog=true

备注:日志会在程序根目录Log内进行输出

Cach_Clear()

描述:清空缓存

说明:可手动清楚缓存

使用案例

C#

MultiLangDll.QtLang.Cach_Clear("");

VB.Net

MultiLangDll.QtLang.Cach_Clear("")

备注:可使用EanbledCach属性关闭缓存

备注:参数为预留,设置为空即可

Cach_Get()

描述:获取已缓存列表

说明:可获取已缓存内容

下面示例为循环查看已缓存内容

C#

List<KeyValuePair<string, string>> vList = MultiLangDll.QtLang.Cach_Get("");
foreach (KeyValuePair<string, string> item in vList)
{
Debug.WriteLine(item.Key+":"+item.Value);
}

VB.Net

Dim lang As List(Of KeyValuePair(Of String, String)) = MultiLangDll.QtLang.Cach_Get("")
For Each i As KeyValuePair(Of String, String) In lang
Debug.WriteLine(i.Key + ":" + i.Value)
Next

备注:可使用EanbledCach属性关闭缓存

备注:参数为预留,设置为空即可

GetLangName()

描述:获取多语言系统支持所有语言名称 例如:en ja

下面示例为循环查看语言名称

C#

String[] vList = MultiLangDll.QtLang.GetLangName();
foreach (String item in vList)
{
Debug.WriteLine(item);
}

VB.Net

Dim lang As String() = MultiLangDll.QtLang.GetLangName()
For Each i As String In lang
Debug.WriteLine(i)
Next

GetLangName_CuList()

描述:获取所有语言支持的区域列表

下面示例为循环查看

C#

List<CultureInfo> vList = MultiLangDll.QtLang.GetLangName_CuList();
foreach (CultureInfo item in vList)
{
Debug.WriteLine(item.DisplayName);
}

VB.Net

Dim lang As List(Of CultureInfo) = MultiLangDll.QtLang.GetLangName_CuList()
For Each i As CultureInfo In lang
Debug.WriteLine(i.DisplayName)
Next

GetShowName_NativeName()

描述:获取对应语言本地化语言名称列表

描述:可获取对应本地国家语言表示形式

下面示例为循环查看

C#

Dictionary<string, string> vList = MultiLangDll.QtLang.GetShowName_NativeName("en");
foreach (KeyValuePair<string,string> item in vList)
{
Debug.WriteLine(item.Key+":"+item.Value);
}

VB.Net

MultiLangDll.QtLang.SetShowLang("en")
Dim lang As Dictionary(Of String, String) = MultiLangDll.QtLang.GetShowName_NativeName("en")
For Each i As KeyValuePair(Of String, String) In lang
Debug.WriteLine(i.Key + ":" + i.Value)
Next

例如在日本对应本地语言显示对照

Czech:チェコ語
Welsh:ウェールズ语
Danish:デンマーク语
German:ドイツ語
English:英語

例如在德国对应本地语言显示对照

Catalan:Katalanisch
Czech:Tschechisch
Welsh:Walisisch
Danish:Dänisch
English:Englisch

备注:可便于用户使用本地能看懂的语言进行语言选择切换等

GetShowName_NativeName()

描述:获取对应语言本地化语言名称

描述:可获取对应本地国家语言表示形式

下面示例为循环查看

C#

string lang = MultiLangDll.QtLang.GetShowName_NativeName("en", "English");
string lang = MultiLangDll.QtLang.GetShowName_NativeName("de", "English");

VB.Net

Dim lang As String = MultiLangDll.QtLang.GetShowName_NativeName("de", "English")

返回结果 英语本地表现形式与在德国英语字符串对应的表现形式

en:English  de;Englisch

备注:返回GetShowName_NativeName("en")只传输一个参数返回列表的具体选择

NoMuSCan()

描述:设置跳过扫描或同步的 模块 类 方法 属性类

说明:可在模块,类,方法添加排除属性设置在进行资源同步或代码批量扫描时跳过资源同步或代码扫描

构造函数

<MultiLangDll.NoMuSCan([NoScan As Boolean=True, NoSynCode As Boolean=True])>

参数:NoScan 默认值:True 说明:批量代码扫描时是否跳过

参数:NoSynCode 默认值:True 说明:代码同步扫描时是否跳过

使用案例

C# 类过滤

[MultiLangDll.NoMuSCan(true,true)]
internal class Class1
{
}

C# 方法过滤

[MultiLangDll.NoMuSCan(true, true)]
void Show() { }

VB.Net 类过滤

<MultiLangDll.NoMuSCan(True, True)>
Public Class Form1
End Class

VB.net 方法过滤

<MultiLangDll.NoMuSCan(True, True)>
Public Sub ShowContent()
End Sub

Dll库文件在哪里?

两种方式查看对应DLL库所在文件

第一种 多语言系统根目录 UserDll 文件夹下进行查看

第二种 进入多语言系统主界面--系统设置--其他--DLL库目录 进行查看

该引用那个DLL库?

可在 Visual Studio 当前打开项目--项目属性---目标框架 查看对应版本

如果使用NET7 NET8或以上版本可引用netstandard2.0库进行使用







Copyright 1996-2050 SGH Corporation, All Rights Reserved

在线客服01 在线客服02 在线客服03 在线客服04