Foxtable(狐表)用户栏目专家坐堂 → 隔行选择


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

主题:隔行选择

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
隔行选择  发帖心情 Post By:2017/2/2 14:09:00 [显示全部帖子]

可以在这个的基础上帮忙改一下吗?

在匹配了后 跳至下一行 改为跳两行 
然后第二次上一行
三次下两行

大概意思就是 单点下移两行,双点上移一行,这样一次类推可以吗?
感谢 感谢 

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170202145811.jpg
图片点击可在新窗口打开查看


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:隔行选择.table


[此贴子已经被作者于2017/2/2 14:58:25编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/3 10:46:00 [显示全部帖子]

谢谢 谢谢  非常感谢 我以为这个功能需要测试很多次,感谢 ,可以了,只是筛选后就乱了,还有就是不能首尾相连,如果是最后一行往下跳就选择第二行,这个可以吗? 感谢 感谢 

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/3 12:08:00 [显示全部帖子]

谢谢 是这样的 一个表格里面有很多状态, 在不同的时候筛选出使用,所有需要筛选,能帮帮看一下筛选后还能下两行上一行的功能吗?感谢 感谢 

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/3 13:07:00 [显示全部帖子]

谢谢  能在帮忙看看吗?

Dim lbl1 As WinForm.Label = e.Form.Controls("Label1")
Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox1")
If lbl1.text <> txt1.text Then
    msgbox("不匹配")
    'Audio.Play("d:\test.wav")
Else
    Dim t As Table = Tables("英语")
    'Dim ar As Row = t.current
    'ar("目录_状态") = "已学习"
    't.Current("听写_次数") += 1
    If e.Form.controls("checkbox1").checked Then
        Dim drs As List(Of DataRow) = t.DataTable.Select("目录_状态 Is null Or 目录_状态 <> '学习中'")
        If drs.count > 0 Then
            Dim idx As Integer = Rand.Next(drs.count-1)
            t.position = t.FindRow(drs(idx))
            Dim r = t.current
            r("目录_状态") = "已学习"
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
            txt1.text = ""
        Else
            msgbox("已学完")
        End If
    Else
        static vars("flag") As Integer = 0
        static pidx As Integer = 0
        Dim idx As Integer
        If vars("flag") = 0 Then
            idx = t.FindRow("目录_状态 is null or 目录_状态 <> '学习中'", t.Position+1, True)
            pidx = idx
            idx = t.FindRow("目录_状态 is null or 目录_状态 <> '学习中'", idx+1, True)
            vars("flag") = 1
        Else
            idx = pidx
            vars("flag") = 0
        End If
        
        If idx = -1  Then
            msgbox("已学完")
        Else
            Dim r As Row = t.Rows(idx)
            t.Position = idx
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
            txt1.text = ""
        End If
    End If
End If

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170203130556.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/3 17:48:00 [显示全部帖子]

感谢 感谢 
如果只是单独的实现这个功能, 应该怎么改一下啊  谢谢你

Dim t As Table = Tables("主窗口_Table1")
If Forms("主窗口").Controls("CheckBox1").Checked
    Dim idx As Integer = Rand.Next(t.rows.count)
    t.Position = idx
Else
    If t.Position < t.Rows.Count - 1
        t.Position = t.Position + 1
    Else
        t.Position = 0
    End If
End If

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/18 9:37:00 [显示全部帖子]

能帮忙看看这个吗?

如果 目录_状态列 内容本来为 “重学习”,则通过收 改变为  “再学习”

Dim lbl1 As WinForm.Label = e.Form.Controls("Label1")
Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox1")
If lbl1.text <> txt1.text Then
    msgbox("不匹配")
    'Audio.Play("d:\test.wav")
    Dim sp As New DotNetSpeech.SpVoice()
    sp.Speak(e.Form.Controls("Label1").Text, DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
Else
    Dim t As Table = Tables("单词")
    t.Current("目录_状态") = "已学习"
    't.Current("听写_次数") += 1
    If e.Form.controls("checkbox1").checked Then
        Dim drs As List(Of DataRow) = t.DataTable.Select("目录_状态 Is null Or 目录_状态 <> '已学习'")
        If drs.count > 0 Then
            Dim idx As Integer = Rand.Next(drs.count-1)
            t.position = t.FindRow(drs(idx))
            Dim r = t.current
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)'包括读音
            txt1.text = ""
        Else
            msgbox("已学完")
        End If
    Else
        Dim idx As Integer = t.FindRow("目录_状态 is null or 目录_状态 <> '已学习'", t.Position+1, True)
        If idx = -1  Then
            msgbox("已学完")
        Else
            Dim r As Row = t.Rows(idx)
            t.Position = idx
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync) '包括读音
            txt1.text = ""
        End If
    End If
End If

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/18 10:47:00 [显示全部帖子]


Dim lbl1 As WinForm.Label = e.Form.Controls("Label1")
Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox1")
If lbl1.text <> txt1.text Then
    msgbox("不匹配")
Else
匹配后的如果目录_状态列内容 为 待考核 ,执行红色代码,
如果匹配后的如果目录_状态列内容 为 重学习 ,执行绿色代码,
    Dim t As Table = Tables("单词")
    t.Current("目录_状态") = "已学习"

Dim t As Table = Tables("单词")
    t.Current("目录_状态") = "再学习"

感谢 感谢 
    If e.Form.controls("checkbox1").checked Then
        Dim drs As List(Of DataRow) = t.DataTable.Select("目录_状态 Is null Or 目录_状态 <> '已学习'")
        If drs.count > 0 Then
            Dim idx As Integer = Rand.Next(drs.count-1)
            t.position = t.FindRow(drs(idx))
            Dim r = t.current
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)'包括读音
            txt1.text = ""
        Else
            msgbox("已学完")
        End If
    Else
        Dim idx As Integer = t.FindRow("目录_状态 is null or 目录_状态 <> '已学习'", t.Position+1, True)
        If idx = -1  Then
            msgbox("已学完")
        Else
            Dim r As Row = t.Rows(idx)
            t.Position = idx
            Dim sp As New DotNetSpeech.SpVoice()
            sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync) '包括读音
            txt1.text = ""
        End If
    End If
End If

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/24 20:40:00 [显示全部帖子]

能帮忙看看吗?点击按钮 各行选择,然后避开 ("听写_状态") = "已学习" 感谢 感谢 

Dim sp As New DotNetSpeech.SpVoice()
sp.Speak(e.Form.Controls("Label1").Text, DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)

Dim t As Table = Tables("单词")
If e.Form.controls("checkbox1").checked Then
    Dim drs As List(Of DataRow) = t.DataTable.Select("听写_状态 Is null Or 听写_状态 = '学习中'")
    If drs.count > 0 Then
        Dim idx As Integer = Rand.Next(drs.count-1)
        t.position = t.FindRow(drs(idx))
        Dim r = t.current
        r("听写_状态") = "已学习"
        Dim sp As New DotNetSpeech.SpVoice()
        sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
        txt1.text = ""
    Else
        msgbox("已学完")
    End If
Else
    Dim idx As Integer
    If vars("flag") = 0 Then
        idx = t.FindRow("听写_状态 is null or 听写_状态 = '学习中'", t.Position+1, True)
        vars("pidx") = idx
        idx = t.FindRow("听写_状态 is null or 听写_状态 = '学习中'", idx+1, True)
        vars("flag") = 1
    Else
        idx = vars("pidx")
        vars("flag") = 0
    End If
    
    If idx = -1  Then
        msgbox("已学完")
    Else
        Dim r As Row = t.Rows(idx)
        t.Position = idx
        Dim sp As New DotNetSpeech.SpVoice()
        sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
        txt1.text = ""
    End If
End If

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/26 17:57:00 [显示全部帖子]

能不帮忙看看这个吗?为什么每次选中后,点击按钮 都会回到第一行,然后在继续呢,感谢 感谢 

Dim t As Table = Tables("单词")
If e.Form.controls("checkbox1").checked Then
    Dim drs As List(Of DataRow) = t.DataTable.Select("阅读_通过 Is null Or 阅读_通过 = 'False'")
    If drs.count > 0 Then
        Dim idx As Integer = Rand.Next(drs.count-1)
        t.position = t.FindRow(drs(idx))
        Dim r = t.current
        r("阅读_通过") = "True"
        'Dim sp As New DotNetSpeech.SpVoice()
        'sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
    Else
        msgbox("已复习完")
    End If
Else
    Dim idx As Integer
    If vars("flag") = 0 Then
        idx = t.FindRow("阅读_通过 Is null Or 阅读_通过 = 'False'", t.Position+1, True)
        vars("pidx") = idx
        idx = t.FindRow("阅读_通过 is null or 阅读_通过 = 'False'", idx+1, True)
        vars("flag") = 1
    Else
        idx = vars("pidx")
        vars("flag") = 0
    End If
    
    If idx = -1  Then
        msgbox("已复习完")
    Else
        Dim r As Row = t.Rows(idx)
        t.Position = idx
        'Dim sp As New DotNetSpeech.SpVoice()
        'sp.Speak(r("目录_英文"), DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
        ''txt1.text = ""
    End If
End If
[此贴子已经被作者于2017/2/26 20:12:46编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2707 积分:18056 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2017/2/26 21:14:00 [显示全部帖子]

不知道为什么 点了选择 按钮后 再下一行 就不按照正常顺序了 
其实就是绕开被选择的 感谢 感谢 
感谢 感谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:隔行选择.table


[此贴子已经被作者于2017/2/26 21:26:10编辑过]

 回到顶部
总数 22 1 2 3 下一页