以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  8.27 日历 好像有个小BUG  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=63306)

--  作者:freeants
--  发布时间:2015/1/18 12:55:00
--  8.27 日历 好像有个小BUG

以上是原帖地址


如果 是 2015年 1月的话,点下个月,再点下个月 会出现下面的 bug, 如果点下一年,或者点其它月份没有问题


此主题相关图片如下:搜狗截图20150118125726.png
按此在新窗口浏览图片




--  作者:freeants
--  发布时间:2015/1/18 12:56:00
--  
问题

图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图20150118125810.png
图片点击可在新窗口打开查看


高度变了




[此贴子已经被作者于2015-1-18 12:55:55编辑过]

--  作者:有点甜
--  发布时间:2015/1/18 14:52:00
--  

全局代码,加入一个方法

 

Public Sub 刷新()
If _bl = False Then Return        \'检测初始化是否已完成
Dim c As Integer = Me.Width / 7        \'计算列宽度
_事务标签_宽度 = c        \'将宽度传递给变量
事务标签背景刷新()        \'刷新事务标签背景图
For i As Integer = 1 To 6        \'设置列宽
    Me.Cols(i).Width = c
Next
Me.Cols(Me.Cols.Count - 1).Width = Me.Width - (Me.Cols(Me.Cols.Count - 2).Left + Me.Cols(Me.Cols.Count - 2).Width)
Me.Rows(1).Height = _日历标题_行高        \'设置行高
Dim 日历行数 As Integer = (_表格行数 - 2) / 2
Dim h As Integer = (Me.Height - _日历标题_行高 - 日历行数 * _日历日历_行高) / 日历行数
For i As Integer = 2 To _表格行数 - 2
    If i Mod 2 = 0 Then
        Me.Rows(i).Height = _日历日历_行高
    Else
        Me.Rows(i).Height = h
    End If
Next
Me.Rows(Me.Rows.Count - 1).Height =  Me.Height - (Me.Rows(Me.Rows.Count - 2).Top + Me.Rows(Me.Rows.Count - 2).Height)        \'自适应最后一行
事务标签布局()        \'刷新事务
End Sub

 

然后调用

 

_my日历.刷新


--  作者:freeants
--  发布时间:2015/1/18 21:46:00
--  
能解决 高度问题,但是 从上面第一张图 可以发现, 3月1号 应该是 周日,   然后就不见了
--  作者:有点甜
--  发布时间:2015/1/18 21:58:00
--  

Dim i_月首星期 As Integer = _月首.DayOfWeek

 

改成

 

Dim i_月首星期 As Integer = iif(_月首.DayOfWeek=0, 7, _月首.DayOfWeek)


--  作者:yancheng
--  发布时间:2017/1/1 10:27:00
--  
有点甜,3楼:

然后调用

 

_my日历.刷新


这个要怎么做?不知道怎么用?

--  作者:yancheng
--  发布时间:2017/1/1 11:40:00
--  
我在全局代码里面加入:下面代码:
Public Sub 刷新()
If _bl = False Then Return        \'检测初始化是否已完成
Dim c As Integer = Me.Width / 7        \'计算列宽度
_事务标签_宽度 = c        \'将宽度传递给变量
事务标签背景刷新()        \'刷新事务标签背景图
For i As Integer = 1 To 6        \'设置列宽
    Me.Cols(i).Width = c
Next
Me.Cols(Me.Cols.Count - 1).Width = Me.Width - (Me.Cols(Me.Cols.Count - 2).Left + Me.Cols(Me.Cols.Count - 2).Width)
Me.Rows(1).Height = _日历标题_行高        \'设置行高
Dim 日历行数 As Integer = (_表格行数 - 2) / 2
Dim h As Integer = (Me.Height - _日历标题_行高 - 日历行数 * _日历日历_行高) / 日历行数
For i As Integer = 2 To _表格行数 - 2
    If i Mod 2 = 0 Then
        Me.Rows(i).Height = _日历日历_行高
    Else
        Me.Rows(i).Height = h
    End If
Next
Me.Rows(Me.Rows.Count - 1).Height =  Me.Height - (Me.Rows(Me.Rows.Count - 2).Top + Me.Rows(Me.Rows.Count - 2).Height)        \'自适应最后一行
事务标签布局()        \'刷新事务
End Sub

怎么用这个:Public Sub 刷新()呢?