datawindow自动换行打印,需结合该函数一起使用
1.设置
具体步骤如下:
1) 在DataWindow Painter中打开此DataWindow对象。
2) 在需设定自动折行的列上双击鼠标, 弹开此列的属性窗口。
3) 选择Position标签, 选中Autosize Height 多选框。
4) 选择Edit标签, 不选中Auto Horz Scroll多选框。
5) 单击OK按钮, 保存所做的修改。
6) 点中Detail Band (即写有Detail的灰色长带), 单击鼠标右键, 选择Properties... 菜单项。
7) 选中Autosize Height多选框。
8) 单击OK按钮, 保存所做的修改。
9) 保存此DataWindow。
2.增加函数
global type f_newline from function_object
end type
forward prototypes
global function string f_newline (string as_string, integer ai_charnum)
end prototypes
global function string f_newline (string as_string, integer ai_charnum);//功能:将字符串转换为换行文本
//参数:as_string 待转换字符串
// ai_charnum 每行字符数
//两个英文算一个字符,一个汉字两个字符
//3.a一二三四五六七八九a一二三四五六七八九十
//2.一二三四五六七八九十
//3.ab一二三四五六七八九
string ls_doc = ""
long li_je//奇偶
long i, ll_strlen
int li_asc, li_ascnum, li_endchar=0, li_add =0
li_ascnum=0
string ls_left_str,ls_allstring
string ls_str1,ls_str2
ls_allstring=as_string//原始字串
long j,jcnt
jcnt=Ceiling(len(as_string)/ai_charnum)//分成几段,
ls_str2=""
//messagebox("分隔",string(jcnt))
for j=1 to jcnt//分成n段
li_ascnum =0
ls_left_str=left(as_string,ai_charnum)//取左边部分
//判断该串中有多少个ascii字符
for i=1 to ai_charnum
if Asc (mid(ls_left_str,i,1))<=126 then li_ascnum ++
next
//如果为奇数
li_je=mod(li_ascnum,2)
if li_je=1 then //如果为奇数,ai_charnum+1
ls_left_str=left(as_string,ai_charnum+1)
as_string=mid(as_string,ai_charnum +2,len(as_string)-ai_charnum -1)
else
ls_left_str=left(as_string,ai_charnum)
as_string=mid(as_string,ai_charnum +1,len(as_string)-ai_charnum)
end if
if len(ls_doc)<=0 then
ls_doc=ls_left_str+" "
else
ls_doc=ls_doc+ls_left_str+" "
end if
next
return ls_doc
end function
3.-----------------------------------
增加计算列 f_newline(字段,10)//10为一行想的字符过数
datawindow自动换行打印,需结合该函数一起使用的更多相关文章
- linux上怎么切换不同版本的arm-linux-gcc?只需改一行函数
linux上怎么切换不同版本的arm-linux-gcc?只需改一行函数 ln -s /usr/local/arm/3.4.1/bin/arm-linux-gcc /usr/bin/arm-linux ...
- 利用 TypeConverter,转换字符串和各种类型只需写一个函数
本文代码基于 .NET Framework 实现. 本来只想进行简单的配置存储的,不料发现 .NET 的基本类型多达十多种.于是,如果写成下面这样,那代码可就太多了哦: // 注:`Configura ...
- php读取外部txt文件内容并打印在页面|fopen()函数
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 三种方法打印 main函数的返回地址的值(old EIP)(用途,你懂得!)
这里能够简单的改动随意函数的返回地址.能够做到自己定义EIP的指向,就可以运行当前进程空间的随意指令,这里仅仅是让大家更清楚栈帧结构,没有涉及跨进程的inline HOOK 等,后面会陆续讲下读取随意 ...
- C# 打印 长字符串自动换行
主要代码如下: StringFormat fmt = new StringFormat(); fmt.LineAlignment = StringAlignment.Near;//左对齐 fmt.Fo ...
- 利用backtrace和backtrace_symbols函数打印调用栈信息
在头文件"execinfo.h"中声明了三个函数用于获取当前线程的函数调用堆栈. #include <execinfo.h> int backtrace(void * ...
- linux内核中打印栈回溯信息 - dump_stack()函数分析【转】
转自:http://blog.csdn.net/jasonchen_gbd/article/details/45585133 版权声明:本文为博主原创文章,转载请附上原博链接. 目录(?)[-] ...
- javascript 打印函数名称和被引用的函数
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- pb datawindow的用法
1. 使DataWindow列只能追加不能修改如何使DataWindow中的数据只能追加新记录而不能修改,利用 Column 的 Protect 属性可以很方便的做到这一点,方法如下:将每一列的 Pr ...
随机推荐
- springMVC文件上传大小超过限制的问题
[转自]https://my.oschina.net/ironwill/blog/646762 springMVC是一个非常方便的web层框架,我们使用它的文件上传也非常的方便. 我们通过下面的配置来 ...
- ViewController里的loadView和viewDidLoad什么区别
当你访问一个ViewController的view属性时,如果此时view的值是nil,那么,ViewController就会自动调用loadView这个方法.这个方法就会加载或者创建一个view对象 ...
- forEach for...in for...of
forEach orEach 方法为数组中含有有效值的每一项执行一次 callback 函数,那些已删除(使用 delete 方法等情况)或者从未赋值的项将被跳过(不包括那些值为 undefined ...
- vue-router笔记
1.vue-router 安装 在安装webpack模块时就安装了 eg: vue init webpack demo (安装webpack模块并取名为demo) 在安装模块时没有安装的话 ...
- MySQL学习之事务安全
事务安全 事务概念 事务(transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit),事务通常由高级数据操纵语言或编程语言 书写的用户程序的执行所引起.事务有事务开始(b ...
- ubuntu18.04错误配置变量环境导致无法进入系统
1.问题描述 错误配置环境变量(直接在/etc/profile文件末尾添加了export xxx),关机后一直在登录界面循环无法进入系统. ###环境变量的添加是在原有变量之后以冒号(:)分隔加入,并 ...
- vue的实例
vue的实例 创建一个vue实例的写法和创建一个变量一样 var vm = new Vue{{ //我们一般用vm来接收vue的实例,vm是 ViewModel的缩写 }} 然后,我们就可以给vue实 ...
- sass的嵌套
sass的嵌套包括两种: 1.选择器的嵌套.(最常用到) 指的是在一个选择器中嵌套另一个选择器来实现继承,从而增强了sass文件的结构性和可读性. 在选择器嵌套中,可以使用&表示父元素选择器 ...
- vue调用豆瓣API加载图片403问题
"豆瓣API是有请求次数限制的”,这会引发图片在加载的时候出现403问题,视图表现为“图片加载不出来”,控制台表现为报错403. 其实是豆瓣限制了图片的加载,我自己用了一个办法把图片缓存下来 ...
- vue-cli项目使用axios实现登录拦截
登录拦截 一.路由拦截 项目中某些页面需要用户登录后才可以访问,在路由配置中添加一个字段requireAuth 在router/index.js中 . const router = new Route ...