Foxtable(狐表)用户栏目专家坐堂 → 为什么狐表的菜单可以翻译成功我自已做的翻译不成功呢?


  共有20748人关注过本帖树形打印复制链接

主题:为什么狐表的菜单可以翻译成功我自已做的翻译不成功呢?

帅哥哟,离线,有人找我吗?
dm168
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/13 22:24:00 [显示全部帖子]

感谢,大功告成,上面的代码还有两个地方搞不明白

还有就是翻译的时候屏幕会不停的闪动,这个有办法解决吗?

Else If TypeOf c Is WinForm.Panel Then  '为什么最后要用一个面板的 if 语句
Else

Dim ct As String = f.Controls(c.name).text
dr = DataTables("表B").find("[en] = '" & ct & "'")
If dr IsNot Nothing
f.Controls(c.name).text = dr(getConfigValue("语言类别", "cn"))
End If
dr = DataTables("表B").find("[cn] = '" & ct & "'")
If dr IsNot Nothing
f.Controls(c.name).text = dr(getConfigValue("语言类别", "en"))
End If

End If
Next

If IsOpened = False Then f.Close() 这个地为没有 end if 是不是漏写了,不写也能成功但还是加入了 end if
Next

[此贴子已经被作者于2012-11-14 0:01:39编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/14 16:12:00 [显示全部帖子]

用下面这个方法我的写法对吗?效果是不太闪了,但会出错
e.Form.StopRedraw()
'动态增加或删除控件的代码
e.Form.ResumeRedraw()


Dim dr As DataRow
For Each f As WinForm.Form In forms
f.StopRedraw()
    Dim IsOpened As Boolean = True
    If f.Opened = False Then  
        IsOpened = False
        f.Open()
        f.Visible = False 
    End If

    For Each c As Winform.Control In f.Controls
        If TypeOf c Is Winform.NavBar Then
           .....................................................................
              
            Next
        Else If Typeof c Is WinForm.TreeView Then
            .....................................................
                
            Next
        Else If TypeOf c Is WinForm.Panel Then
        Else
           ........................................................
    Next
    If IsOpened = False Then f.Close()
f.ResumeRedraw()
   Next

[此贴子已经被作者于2012-11-14 16:23:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/14 16:31:00 [显示全部帖子]

用这个方法感觉好多了,就是如果有很多窗口速度上是不是会没比用这个好呢?e.Form.StopRedraw()
e.Form.StopRedraw() 我的例子不合适吗?
Dim dr As DataRow
For Each f As WinForm.Form In forms

    Dim IsOpened As Boolean = True
    If f.Opened = False Then
        IsOpened = False
        f.Open(-1000, -1000)
        f.Visible = False
        
    End If
[此贴子已经被作者于2012-11-14 16:31:37编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/14 17:03:00 [显示全部帖子]

不太明白在什么地方做“所有控件的Visible属性设置为False” 还有在哪一个“在AfterLoad事件中”写这些代码
能帮我做个实例吗?
这个是会闪动的例子
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.table

[此贴子已经被作者于2012-11-14 17:03:07编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/15 15:40:00 [显示全部帖子]

这个方法不会闪了,就是不完美,并列、独立、共有的窗口,无法翻译,就是要把这三种窗口打开后才能翻译
[此贴子已经被作者于2012-11-15 15:41:29编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/15 15:42:00 [显示全部帖子]

这个方法不会闪了,就是不完美,并列、独立、共有的窗口,无法翻译,就是要把这三种窗口打开后才能翻译
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6(1).table
原标题是英文的,开打项目后单选 控件是中文,上面的三种窗口应被译成中文,但是上面的三种窗口要打开窗口后重新再选一次中文才能翻译成功
[此贴子已经被作者于2012-11-15 15:57:27编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/15 16:18:00 [显示全部帖子]

所以在以上三种窗口的AfterLoad 中都加入Functions.Execute("窗口翻译2", e.Form)这种就解决了,感谢帅哥,在线噢!
lin_hailun  的帮助

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/15 16:40:00 [显示全部帖子]

晕又发现这三种的窗口标题无法翻译
[此贴子已经被作者于2012-11-15 16:56:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/16 11:16:00 [显示全部帖子]

原始标题是英文的 并列、独立、共有三种窗口在关闭状态下无法翻译成功,要打开后才能翻译成功,我把Functions.Execute("窗口翻译2", e.Form)放到不成功的窗口是的afterlaod事件中解决了,但这个方法就是繁锁点不知有更好的办法没有

 回到顶部
帅哥哟,离线,有人找我吗?
dm168
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:111 积分:1083 威望:0 精华:0 注册:2012/9/14 17:23:00
  发帖心情 Post By:2012/11/17 18:27:00 [显示全部帖子]

最后一个问题了

MessageBox.Show有办法遍历吗?就只有这个没翻译了

其它的都搞定了

[此贴子已经被作者于2012-11-17 18:31:59编辑过]

 回到顶部
总数 46 上一页 1 2 3 4 5 下一页