手头有几个问题一直没有解决,请高手赐教!

时间:2022-10-07 16:16:52
我手头有几个问题一直没有解决,请高手赐教!
 1.我用mschart画出曲线图,但是由于数据多所以横坐标的标签显的模糊不清,这个怎么解决?还有我运行后不想让它可以来回移动,要固定住,这哪里可以设置?
 2.msflexgrid控件的问题:我怎么可以将控件里的所有内容都选中,相当于按下CTRL+A键的功能?还有我要删除选中的多行,我怎么确定哪些行列处在多选状态或者跨行的选中?我要将控件里的内容保存到文本文件中,这有我的一些代码可出错提示说记录长度有误?
  CommonDialog1.Action = 2
  Dim temp As String
  Dim i As Integer
  Dim num As Long
  Open CommonDialog1.FileName For Random As #1
    For i = 0 To MSFlexGrid1.Rows - 1
      For j = 0 To MSFlexGrid1.Cols - 1
    temp = temp & MSFlexGrid1.TextMatrix(i, j) & Chr(10) & Chr(13)
    Next j
    Next i
  Put #1, , temp  '这是出错语句,可能需要记录号吧,
   Close #1
  再一问题是我这msflexgrid控件中我选中一行,然后我想将这一行复制下来,因我这控件右键有弹出菜单,我要实现里面的一个复制功能,请赐教。!
 3.我的listbox里有内容,我要将这些内容写入文本文件,然后将其再调用进来,可加进来以后都是显示在listbox的一行里面,我想文本文件中一行为listbox里面的一行,请赐教!

 因问题众多,如能帮解决问题的,一定给分!分少可以再加!
 因刚初学,希望可以和众多高手交流经验。
 QQ:270240311  ren51me@163.com

9 个解决方案

#1


附加第一个问题:mschart中我想让它垂直显示?纵坐标的值能否改变?我那个是曲折线的,能不能在线上面显示我的数据?

#2


不是吧,没人理我~~~

#3


问题二:
MSFlexGrid有一个属性是允许用户多行选择的,请打开该选项,就可以进行多行选择,如果设成BOTH的话, 可以进行多行和多列选择。
在MSFlexGrid中的选择好象只能用鼠标进行选择, 用CTRL+A好象实现不了。不过可以在它的KEYDOWN事件中自己写函数。 
问题二附加:自己添加一个POPMENU控件, 要做什么自己写就是了。 
MSFLEXGRID好象有个SELECT集。(不好意思,手头上没装VB,只能写个大概)
问题三:
在每行LIST的值末尾强制加个回车就行了。

#4


问题一,
控件里面有个自定义,或者右键点,选属性什么的,就可以定义标签不可移动了

#5


to: hupeng213(小鹏)
    问题二: 我是想确定怎么知道我选中的哪几行?应该是哪个方法或者属性?
  KEYDOWN事件中自己写函数。 该怎么写函数相当按下CTRL+A,或者有没有其它属性可以让我全选中msflexgrid的所有单元格内容?
   我那弄好弹出菜单了,我想问的是复制功能怎么实现?复制我选中的行

  问题三:我用的是list.additem方法将文件中的内容加到list里,怎么加回车,?再加回车也没有啊,我想知道的是我应该每读取文件中的一行,然后用additem方法加到list里,这个是怎么实现?
  

  问题一中我想让这个控件旋转90度那样,就是曲线是垂直状态的?如何解决?

#6


Open CommonDialog1.FileName For Random As #1
random方式读写文件,应该每行记录长度固定,楼主应该换一种方式读写文件,binary也行
for output也行

#7


MSFlexGrid.selection不知道是否有这个属性,我电脑上没装VB,实在记不清楚了。

全选并存储的函数大概可以这样子写
dim sRowVal as string
dim aryFlx() as string
if shift =2 then 
  if keycode='A' then 
    dim i,j as integer
    with MSFlexGrid
      redim aryFlx(.rows) as string
      for i=0 to .rows
        for j=0 to .cols
          ....
          '这里按行拼接成串, 存到一个变量里面
          sRowVal=sRowVal & .matrix(i,j).text
          ....
        next j
        aryFlx(i)=sRowVal & vbcrlf 
      next i
    end with
  endif
endif


PS:具体语法有问题,未测试过

#8


while not eof (#1)
  按行读文件
  list.additem
end while


这样子写不行吗??

#9


谢谢小鹏,我试下啊,看行不行

#1


附加第一个问题:mschart中我想让它垂直显示?纵坐标的值能否改变?我那个是曲折线的,能不能在线上面显示我的数据?

#2


不是吧,没人理我~~~

#3


问题二:
MSFlexGrid有一个属性是允许用户多行选择的,请打开该选项,就可以进行多行选择,如果设成BOTH的话, 可以进行多行和多列选择。
在MSFlexGrid中的选择好象只能用鼠标进行选择, 用CTRL+A好象实现不了。不过可以在它的KEYDOWN事件中自己写函数。 
问题二附加:自己添加一个POPMENU控件, 要做什么自己写就是了。 
MSFLEXGRID好象有个SELECT集。(不好意思,手头上没装VB,只能写个大概)
问题三:
在每行LIST的值末尾强制加个回车就行了。

#4


问题一,
控件里面有个自定义,或者右键点,选属性什么的,就可以定义标签不可移动了

#5


to: hupeng213(小鹏)
    问题二: 我是想确定怎么知道我选中的哪几行?应该是哪个方法或者属性?
  KEYDOWN事件中自己写函数。 该怎么写函数相当按下CTRL+A,或者有没有其它属性可以让我全选中msflexgrid的所有单元格内容?
   我那弄好弹出菜单了,我想问的是复制功能怎么实现?复制我选中的行

  问题三:我用的是list.additem方法将文件中的内容加到list里,怎么加回车,?再加回车也没有啊,我想知道的是我应该每读取文件中的一行,然后用additem方法加到list里,这个是怎么实现?
  

  问题一中我想让这个控件旋转90度那样,就是曲线是垂直状态的?如何解决?

#6


Open CommonDialog1.FileName For Random As #1
random方式读写文件,应该每行记录长度固定,楼主应该换一种方式读写文件,binary也行
for output也行

#7


MSFlexGrid.selection不知道是否有这个属性,我电脑上没装VB,实在记不清楚了。

全选并存储的函数大概可以这样子写
dim sRowVal as string
dim aryFlx() as string
if shift =2 then 
  if keycode='A' then 
    dim i,j as integer
    with MSFlexGrid
      redim aryFlx(.rows) as string
      for i=0 to .rows
        for j=0 to .cols
          ....
          '这里按行拼接成串, 存到一个变量里面
          sRowVal=sRowVal & .matrix(i,j).text
          ....
        next j
        aryFlx(i)=sRowVal & vbcrlf 
      next i
    end with
  endif
endif


PS:具体语法有问题,未测试过

#8


while not eof (#1)
  按行读文件
  list.additem
end while


这样子写不行吗??

#9


谢谢小鹏,我试下啊,看行不行