'没有看demo,随便写写,分享下..'写个汉化工具,试着用了下老马推荐的控件(Codejock Software),感觉效果不错'SkinFramework,运行时VB IDE部分区域有变色现象,窗体加载前后需要载入窗体和释放窗体
With sfk
.LoadSkin "Office2007.cjstyles", ""
.ApplyWindow Me.hWnd
.ApplyOptions = xtpSkinApplyColors
End With
With Me.sfk
.RemoveWindow Me.hWnd
End With
'主题在MDI窗体上,.ApplyOptions =xtpSkinApplyFrame 似乎覆盖菜单,没有仔细查看,待定'FlatEdit和Label使用时,不小心溢出了(懒惰的复制粘贴害的 嘿嘿),结果界面上的Label,FlatEdit全部消失了..'明天继续...
解决方案 »
- 请看看下面的程序要怎么写?
- 请教高手 如何用程序操纵windows media play全屏
- 我有 GMail 账户了,高兴!
- Excel报表问题
- 感悟人生苦涩!
- 如何实现Frame的背影颜色透明?up者也有分!
- 获取MAC本机地址 出错???
- 急急急!!!!关于数据库编程问题。(100分)
- 请问用pic = loadpicture(imgfile)加载的图片pic.width和pic.height的单位是什么?
- 如何让标签控件可以输入而且可以象text一样有滚动条?
- 自从装了vs2008和vs2010,vb6打开就非常慢了.有解决办法没?搜了下都没说办法的.谢谢!
- 【视频播放闪烁问题】闪烁发生于设置播放位置时.比较郁闷,大家拉我一把吧....
它的样式设置是当前进程全局的,所以调试运行 VB-IDE 也会受部分影响。
"不小心溢出了"是内存溢出嘛?
'主窗体加载时,运行的初始化控件,可能是该控件集合使用了该文件.
Private Sub MDIForm_Initialize()
Call InitCommonControls
End Sub
'窗体加载代码
Private Sub MDIForm_Load()
With Me
.WindowState = 2
End With
Call Init_Ctrl
End Sub
'初始化控件
Private Sub Init_Ctrl()
On Error GoTo err
Debug.Assert (Init_Commandbar = True)
Debug.Assert (Init_SFK = True)
Exit Sub
err:
MsgBox err.Description, vbInformation, MSG_TITLE
End Sub
'加载皮肤
Private Function Init_SFK() As Boolean
On Error GoTo err
Init_SFK = False
With sfk
.LoadSkin App.Path & "\skin\WinXP.Royale.cjstyles", ""
.ApplyOptions = xtpSkinApplyFrame Or xtpSkinApplyMetrics
.ApplyWindow Me.hWnd
End With
Init_SFK = True
Exit Function
err:
MsgBox err.Description, vbInformation, MSG_TITLE
End Function
'初始化菜单,由于主题覆盖了MDI窗体的菜单部分,所以需要使用CommandBars生成菜单
Private Function Init_Commandbar() As Boolean
Dim ctrl As CommandBarControl
Dim ctrlFile As CommandBarPopup
Dim ctrlEdit As CommandBarPopup
Dim ctrlView As CommandBarPopup
Dim ctrlWindow As CommandBarPopup
Dim ctrlHelp As CommandBarPopup
Init_Commandbar = False
cmdbr.AttachToWindow (Me.hWnd)
Set ctrlFile = cmdbr.ActiveMenuBar.Controls.Add(xtpControlPopup, 0, "&File", -1, False)
With ctrlFile.CommandBar.Controls
.Add xtpControlButton, ID_FILE_NEW, "&New"
.Add xtpControlButton, ID_FILE_OPEN, "&Open"
.Add xtpControlButton, ID_FILE_CLOSE, "&Close"
.Add xtpControlButton, ID_FILE_SAVE, "&Save"
Set ctrl = .Add(xtpControlButton, ID_FILE_PRINT, "&Print")
ctrl.BeginGroup = True
.Add xtpControlButton, ID_FILE_PRINT_SETUP, "Print Set&up..."
Set ctrl = .Add(xtpControlButton, ID_FILE_EXIT, "&Exit")
ctrl.BeginGroup = True
End With
With cmdbr
.VisualTheme = xtpThemeNativeWinXP
End With
Init_Commandbar = True
Exit Function
err:
MsgBox err.Description, vbInformation, MSG_TITLE
End Function
'菜单消息处理函数,CommandBars的事件
Private Sub cmdbr_Execute(ByVal Control As XtremeCommandBars.ICommandBarControl)
On Error GoTo err
Select Case Control.Id
Case ID_FILE_NEW
Debug.Assert (Show_New_Form = True)
Case ID_FILE_EXIT
Unload Me
Case ID_FILE_OPEN
Case Else
MsgBox "else_click", vbInformation, MSG_TITLE
End Select
Exit Sub
err:
MsgBox err.Description, vbInformation, MSG_TITLE
End Sub
'运行子窗体
Private Function Show_New_Form() As Boolean
On Error GoTo err
Dim newfrm As New frmTemp
Show_New_Form = False
newfrm.Show
Set newfrm = Nothing
Show_New_Form = True
Exit Function
err:
MsgBox err.Description, vbInformation, MSG_TITLE
End Function
'控件示例代码,是在MDIForm_Unload事件中,我写在这里是为了点击MDI的关闭按钮时,在子窗体关闭前提示是否退出,可根据你的需要选择.
Private Sub MDIForm_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Dim frm As Form
If MsgBox("确定要退出系统吗?", vbYesNo, MSG_TITLE) = vbYes Then
For Each frm In Forms
If Not frm Is Nothing Then
Unload frm
End If
Next
End If
End Sub程序使用的声明如下,几乎是示例的代码,哈哈:Option Explicit
Public Const ID_FILE_NEW = 100
Public Const ID_FILE_OPEN = 101
Public Const ID_FILE_CLOSE = 102
Public Const ID_FILE_SAVE = 103
Public Const ID_FILE_EXIT = 104Public Const ID_EDIT_UNDO = 105
Public Const ID_EDIT_COPY = 106
Public Const ID_EDIT_PASTE = 107
Public Const ID_EDIT_CUT = 108Public Const ID_EDIT_PARAM = 256Public Const ID_VIEW_TOOLBAR_STANDARD = 109
Public Const ID_VIEW_TOOLBAR_THEMES = 115
Public Const ID_VIEW_STATUSBAR = 110
Public Const ID_VIEW_OPTIONS = 111Public Const ID_HELP_ABOUT = 112Public Const ID_FILE_PRINT = 113
Public Const ID_FILE_PRINT_SETUP = 114Public Const ID_FORMAT_BOLD = 120
Public Const ID_FORMAT_ITALIC = 121
Public Const ID_FORMAT_UNDERLINE = 122Public Const ID_FORMAT_ALIGNLEFT = 123
Public Const ID_FORMAT_CENTER = 124
Public Const ID_FORMAT_ALIGNRIGHT = 125Public Const ID_THEME_OFFICE = 130
Public Const ID_THEME_DEFAULT = 131
Public Const ID_THEME_OFFICE2003 = 132
Public Const ID_THEME_NATIVEXP = 133
Public Const ID_THEME_SWITCH = 134
Public Const ID_THEME_WHIDBEY = 143Public Const ID_WINDOW_CASCADE = 140
Public Const ID_WINDOW_TILE_HORIZANTALLY = 141
Public Const ID_WINDOW_TILE_VERTICALLY = 142Public Const ID_TASKPANEL_FIRST = 180
Public Const ID_TASKPANEL_LAST = 182
Public Const FSHIFT = 4
Public Const FCONTROL = 8
Public Const FALT = 16Public Const VK_BACK = &H8
Public Const VK_TAB = &H9
Public Const VK_ESCAPE = &H1B
Public Const VK_SPACE = &H20
Public Const VK_PRIOR = &H21
Public Const VK_NEXT = &H22
Public Const VK_END = &H23
Public Const VK_HOME = &H24
Public Const VK_LEFT = &H25
Public Const VK_UP = &H26
Public Const VK_RIGHT = &H27
Public Const VK_DOWN = &H28
Public Const VK_INSERT = &H2D
Public Const VK_DELETE = &H2E
Public Const VK_MULTIPLY = &H6A
Public Const VK_ADD = &H6B
Public Const VK_SEPARATOR = &H6C
Public Const VK_SUBTRACT = &H6D
Public Const VK_DECIMAL = &H6E
Public Const VK_DIVIDE = &H6F
Public Const VK_F1 = &H70
Public Const VK_F2 = &H71
Public Const VK_F3 = &H72
Public Const VK_F4 = &H73
Public Const VK_F5 = &H74
Public Const VK_F6 = &H75
Public Const VK_F7 = &H76
Public Const VK_F8 = &H77
Public Const VK_F9 = &H78
Public Const VK_F10 = &H79
Public Const VK_F11 = &H7A
Public Const VK_F12 = &H7BPublic Const ID_INDICATOR_CAPS = 59137
Public Const ID_INDICATOR_NUM = 59138
Public Const ID_INDICATOR_SCRL = 59139Public Const MSG_TITLE As String = "提示"
此产品包含在产品集合 Xtreme Toolkit Pro,Xtreme Suite Pro 中。一般特征
Xtreme Command Bars 支持所有你对企业类组件所期望的所有特征。 Microsoft® 风格工具栏
Microsoft® 风格菜单
Microsoft® 风格MDI表格菜单和工具栏的个性化
Xtreme Command Bar提供完全的个性化菜单和工具栏。 智能化菜单
下拉式工具栏和菜单
拖放命令
编辑、复制、删除和更改命令
活动的增加和移除工具栏命令
用户自定义工具栏
固定放大缩小工具栏图标
固定屏幕端
隐藏和显示工具栏