找回密码
 立即注册

QQ登录

只需一步,快速开始

qianwn

中级会员

6

主题

7

帖子

944

积分

中级会员

积分
944

活字格认证

qianwn
中级会员   /  发表于:2013-6-1 10:59  /   查看:5569  /  回复:1
你好,
   我最近要把一个程序移植到X64位系统上。
   原来的程序用的是activex的控件。

   用DLL控件后发现原来activex的一些方法没有。
  主要有下面几个:


   1. setColHidden()  这个方法在DLL中不存在,应该用哪个函数代替?
   
   2.SetTypeNumMin() 这个方法在DLL中不存在,应该用哪个函数代替?

   3.SetTypeHAlign()  SetTypeVAlign() 这个方法在DLL中不存在,应该用哪个函数代替?


   3.SetCellType()   这个方法原来用的是SetCellType(2),转换为DLL后 SetCelltype(1,0,2) 最后一个样式参数2无效,不知道最后的那个样式参数应该怎么写?

   4.setCOl,SetROW方法是否在DLL中已经不存在?直接用SetValue就可以了?

  5.GetText()方法现在是否直接用 GetData() h或者GetValue()代替?


用的程序是VC, 软件版本原来是spread7 ,现在用的是spread 8   

谢谢。。

1 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2013-6-3 18:50:00
沙发
回复 1楼qianwn的帖子

1. setColHidden()  这个方法在DLL中不存在,应该用哪个函数代替?
  1. BOOL TSpread::IsColHidden(SS_COORD Col);
复制代码

   
2.SetTypeNumMin() 这个方法在DLL中不存在,应该用哪个函数代替?
帮助文档中搜索:SSSetTypeNumberEx
3.SetTypeHAlign()  SetTypeVAlign() 这个方法在DLL中不存在,应该用哪个函数代替?
可以通过相应单元格类型的 Style 进行设置:

  1. Style Currency style
  2. Use the (|) OR operator and combine the following values as indicated:  
  3. Constant Description  
  4. SSS_ELLIPSES Displays an ellipsis (...) when text is too long to fit in the cell  
  5. SSS_NEGRED Displays negative numbers as red  
  6. Use one of the following values:  
  7. SSS_ALIGN_TOP (Default) Aligns text at the top of cells  
  8. SSS_ALIGN_BOTTOM Aligns text at the bottom of cells  
  9. SSS_ALIGN_VCENTER Centers text vertically within the cell  
  10. Use one of the following values:  
  11. SSS_ALIGN_LEFT (Default) Aligns text to the left in the cell  
  12. SSS_ALIGN_RIGHT Aligns text to the right in the cell  
  13. SSS_ALIGN_CENTER Centers text horizontally within the cell  
  14. Use one of the following values:  
  15. SSS_TEXTORIENT_VERT_LTR Displays text vertically in the cell and wraps from left to right  
  16. SSS_TEXTORIENT_DOWN Rotates text 90 degrees (to "3 o'clock")  
  17. SSS_TEXTORIENT_UP Rotates text 270 degrees (to "9 o'clock")  
  18. SSS_TEXTORIENT_INVERT Rotates text 180 degrees (to "6 o'clock")  
  19. SSS_TEXTORIENT_VERT_RTL Displays text vertically in the cell and wraps from right to left  
复制代码


3.SetCellType()   这个方法原来用的是SetCellType(2),转换为DLL后 SetCelltype(1,0,2) 最后一个样式参数2无效,不知道最后的那个样式参数应该怎么写?

  1. C++
  2. BOOL TSpread::GetCellType(SS_COORD Col, SS_COORD Row, LPSS_CELLTYPE lpCellType);
  3. BOOL TSpread::SetCellType(SS_COORD Col, SS_COORD Row, LPSS_CELLTYPE lpCellType);
  4. BOOL TSpread::SetCellTypeRange(SS_COORD Col, SS_COORD Row, SS_COORD Col2, SS_COORD Row2, LPSS_CELLTYPE lpCellType);
复制代码

4.setCOl,SetROW方法是否在DLL中已经不存在?直接用SetValue就可以了?
  1. C++
  2. int TSpread::GetValue(SS_COORD Col, SS_COORD Row, LPTSTR lpBuffer);
  3. BOOL TSpread::SetValue(SS_COORD Col, SS_COORD Row, LPCTSTR lpData);
  4. BOOL TSpread::SetValueRange(SS_COORD Col, SS_COORD Row, SS_COORD Col2, SS_COORD Row2, LPCTSTR lpData);
复制代码

5.GetText()方法现在是否直接用 GetData() h或者GetValue()代替?
对应方法为:SSGetData, SSGetFloat, SSGetInteger
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部