当我执行了commondialog1.showopen之后,我就想用F1-F10键来控制对话框的
(回退上一级目录浏览)、(向上一级目录浏览)、(上下左右选择文件)、
(确认打开文件)、(取消打开)等功能? 
该如何实现?

解决方案 »

  1.   

    用窗口的KEYDOWN事件,在里面加几个CASE应该可以达到楼主的要求
      

  2.   

    先用API函数获得窗体的句柄
    然后再用KEYDOWN接收键盘事件
    分别响应不同的按键
      

  3.   

    ----先否决一下第一个回复,在打开了对话框的时候焦点已经不在了窗体上所以不能用keydown事件了,
        所以才不好解决。
    ----二楼说的多线程该怎么实现呢?
    ----回复三楼:我做的程序用在车间直接只有一个显示器和做在显示器上10个按纽,分别对应F1-F10,所以没有键盘和鼠标,
    ----回复四楼:能说详细一点吗:)  我用钩子实现了对话框预览图片的功能,但对于这个问题难道要编个键盘事件,我没有编写事件的经历,请高手来帮帮忙啊:)
      

  4.   

    五楼的意思是获得哪个窗体的句柄呢?
     如果是主窗体的句柄,那应该不行,因为当我实现一个keydown事件的话发送一个sendkey命令,那对话框窗体还是接收不到这个消息
      

  5.   

    要么在写一个小的APP来实现,要么使用GetOpenFileName来代替commondialog1.showopen
      

  6.   

    劝你用VB的DirList,FileList自己写一个。车间不需要“我的文档”“桌面”“最近使用的文档”这种高级东西吧