一门编程语言,二三个牛人就能易用起来-使用freebasic版的afx库

一门语言,有时候常常只需要两三个牛人来做好基础工作,这门语言便开始易用起来了。Freebasic也不例外。作为开源的,而且毫无特色的语言,永远不要指望它能象微软的vb或c#那样易用。但Freebasic是目前极少数支持64位、跨平台,支持面向对象的basic语系语言

 

reebasic菜鸟初学Freebasic基础教程十:使用freebasic版的afx库

已有 1453 次阅读2017-5-11 15:54 |个人分类:FreeBasicfreebasic教程freebasic入门freebasicfreebasic教程freebasic入门,freebasicfreebasic教程freebasic入门freebasicfreebasic教程freebasic入门freebasicfreebasic教程freebasic入门freebasic,freebasic教程freeb

          看完第九章的了解com数据类型,你是不是感到很绝望,它的复杂程度超出一般没接触过的人的想象,但其实你只需要了解一下而已。Freebasic使用它们也是很简单,跟VB的使用差不多。你了解一下,主要是遇到问题,懂得从什么地方入手修复。
         '冬瓜汤编写整理
          一门语言,有时候常常只需要两三个牛人来做好基础工作,这门语言便开始易用起来了。Freebasic也不例外。作为开源的,而且毫无特色的语言,永远不要指望它能象微软的vb或c#那样易用。但Freebasic是目前极少数支持64位、跨平台,支持面向对象的basic语系语言,而且从VB到Freebasic转换,你需要多学的东西,其实是非常少的。很多看上去是vb没有的内容,其实并不是vb没有,只不过我们平时没注意忽略而已。比如#include。vb(vba)引用一个com的ocx控件或dll,也是使用#include,只不过你会去看VBP文件吗?很少人会去看的。Freebasic在windows上使用,和vb6的内容是高度重叠的。只不过Freebasic能写32/64位的标准dll,静态库lib,32/64的exe,以及32/64位的ocx和activeX的dll。支持64位,是我学习Freebasic的原因。
             在这里,我将向afx库的支撑者jose致敬,这是一个牛人,他的出手让Freebasic变得易用和强大起来。
             

             事实上,freebasic对于unicode支持并不是特别理想,特别是中文,因为那一帮老外,对于中文一无所知,而afx库就是专用于unicode,专用于windows上的库,它是一个
几乎包括一个windows程序常用到的方方面面的功能基础框架。
            事实上afx库里面的函数比vba要多得多,非常全面。也非常方便。凡是C开头的都是类,afx开头的都是函数。
            这里面的很多东西,用过vb(vba),你会发现都很熟悉,cfilesys就是一个比fso更全面的类似fso的文件系统类,cTextstream就是fso中的textstream,这是一个处理文本流的类,帮助文档中没有出现的Regexp正则类,用的也是Vbscript中的正则,当然你可以使用其它无比强大的c的正则库,和perl正则库。odbc适用所有数据库,odbc中提供一个类似dao的数据容器odbcStmt,webbrowser就是我们常用的webbrowser,你也可以使用chrome的cef库,如果你能忍受100多M库大小的话。winhttpRequest也是常用winHttpRequest5.1。GDI+类库,这个是图形类,Freebasic最不缺的就是图形库openGL,音频库……多达十几个。cbstr就是vb的vbstring类型,它用类进行包装。Cvariant就是vb的variant,也是类进行包装,csafeArray就是vb的数组,也是类进行包装。cDicObj是vbscript中的dictionary,支持variant。ADO,这个不用我说,就是ado类。
         com类库,是调用纯com(iunknown)的dll,这个Vb(vba)无法直接使用的,因为从win7开始,微软发布的com的dll都是纯com,colecon就是OLE容器,在FB中使用ocx,就是通过Colecon调用ocx控件……。

freebasic菜鸟初学Freebasic基础教程十:使用freebasic版的afx库-ganlinlao-access培训,access教程,access下载,access技巧,access破解,access实例,access源码,access数据库,access开发,access软件,ACCESS学习,access文章,access应用-Office中国论坛/Access中国论坛 - Powered by Discuz!
http://www.office-cn.net/blog-230471-15336.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常抱歉,我作为一个语言模型并不具备自动化编程的能力,但是我可以为您提供一些参考: 1. 首先需要安装`pywin32`,可以使用`pip install pywin32`命令进行安装。 2. 使用`win32api`和`win32gui`模块获取同花顺主窗口句柄,可以使用以下代码: ```python import win32api import win32gui # 获取同花顺主窗口句柄 hwnd = win32gui.FindWindow('TdxW_MainFrame_Class', None) ``` 3. 使用`win32gui`模块获取同花顺窗口中的控件句柄,例如股票代码输入框、买卖数量输入框、买入按钮等,可以使用以下代码: ```python # 获取股票代码输入框句柄 code_edit_hwnd = win32gui.FindWindowEx(hwnd, None, 'Afx:00400000:b:00010003:00000006:00000000', None) # 获取买卖数量输入框句柄 amount_edit_hwnd = win32gui.FindWindowEx(hwnd, None, 'Afx:00400000:b:00010003:00000006:00000000', None) # 获取买入按钮句柄 buy_button_hwnd = win32gui.FindWindowEx(hwnd, None, 'TButton', '买入[B]') ``` 需要根据同花顺窗口中的控件名称或者类名进行修改,这里只是示例代码。 4. 使用`win32gui`和`win32api`模块向窗口中的控件发送消息,例如输入股票代码、买卖数量等,可以使用以下代码: ```python # 向股票代码输入框输入股票代码 win32api.SendMessage(code_edit_hwnd, win32con.WM_SETTEXT, None, '600000') # 向买卖数量输入框输入买卖数量 win32api.SendMessage(amount_edit_hwnd, win32con.WM_SETTEXT, None, '100') # 点击买入按钮 win32api.PostMessage(buy_button_hwnd, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, 0) win32api.PostMessage(buy_button_hwnd, win32con.WM_LBUTTONUP, win32con.MK_LBUTTON, 0) ``` 需要根据实际情况进行修改,例如输入的股票代码、买卖数量等。 需要注意的是,使用自动化程序进行股票交易存在一定的风险,建议谨慎使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值