长文本编辑对话框_第1页
长文本编辑对话框_第2页
长文本编辑对话框_第3页
长文本编辑对话框_第4页
长文本编辑对话框_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DATAgt_txtTYPETABLEOFtlineWITHHEADERLINE.data:editor_containertypeREFTOcl_gui_custom_container, editortypereftocl_gui_textedit.*-长度CONSTANTSc_line_lengthtypeiVALUE72.*-存放分行的内容的 内表types:BEGINOFst_text,linetypeclengthc_line_length,endofst_text.types:tt_texttypetableofst_text.datait_tab_textTYPEtt_text

2、WITHHEADERLINE.datatexttabletypett_textWITHHEADERLINE.PBOMODULEstatus_0101OUTPUT.SETPF-STATUSSTANDARD.ifeditor_containerisINITIAL.*-跟alv容器一样CREATEOBJECTEDITOR_CONTAINEREXPORTING*PARENT=CONTAINER_NAME=G_CONTAINER*STYLE=*LIFETIME=lifetime_default*REPID=*DYNNR=*NO_AUTODEF_PROGID_DYNNR=*EXCEPTIONS*CNTL_

3、ERROR=1*CNTL_SYSTEM_ERROR=2*CREATE_ERROR=3*LIFETIME_ERROR=4*LIFETIME_DYNPRO_DYNPRO_LINK=5*others=6.IFSY-SUBRC0.*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-MSGNO*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.endif.ifeditorisINITIAL.*跟建立alv控件一样CREATEOBJECTEDITOREXPORTINGMAX_NUMBER_CHARS=100000*STYLE=0WORDWRAP

4、_MODE=cl_gui_textedit=wordwrap_at_fixed_positionWORDWRAP_POSITION=c_line_lengthWORDWRAP_TO_LINEBREAK_MODE=cl_gui_textedit=FALSE*FILEDROP_MODE=DROPFILE_EVENT_OFFPARENT=editor_container*LIFETIME=*NAME=EXCEPTIONS*ERROR_CNTL_CREATE=1*ERROR_CNTL_INIT=2*ERROR_CNTL_LINK=3*ERROR_DP_CREATE=4*GUI_TYPE_NOT_SUP

5、PORTED=5others=6.IFSY-SUBRC0.*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-MSGNO*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.endif.refreshtexttable.texttable-line=gt_output-txt. 双击的那一行的文本*debug显示为 成功#失败#passappendtexttable.cleartexttable.*把成功#失败#pass 现在到文本编辑对话框里面 显示第一行 成功 第二*行失败 第三行pass把文本 成功#失败#pass 第一行 成功

6、 第二行失败 第三行pass的内表形式CALLMETHODEDITOR-SET_TEXT_AS_STREAMEXPORTINGTEXT=texttableEXCEPTIONSERROR_DP=1ERROR_DP_CREATE=2others=3.ENDMODULE.MOD_CUSTOM_CONTROLOUTPUTPAIMODULEuser_command_0101INPUT.DATA:s3(256)TYPEc.CLEARsave_code.save_code=ok_code.CLEARok_code.CASEsave_code.WHENBACK.*-一定要清空防止下次双击调用对话框的时候重复r

7、efreshtexttable.LEAVETOSCREEN0.WHENSAVE.*-把文本编辑器对话框里的内容提取到texttable这个内表里refreshtexttable.CALLMETHODEDITOR-GET_TEXT_AS_STREAM*EXPORTING*ONLY_WHEN_MODIFIED=FALSEIMPORTINGTEXT=texttable*IS_MODIFIED=EXCEPTIONSERROR_DP=1ERROR_CNTL_CALL_METHOD=2others=3.IFSY-SUBRC0.*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-M

8、SGNO*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.*把 成功#失败#pass 转换为3行 给gt_txt 最开始read text读出来的就放在这个内*表里 用于调用save text 上传上去refreshgt_txt.CALLFUNCTIONCONVERT_STREAM_TO_ITF_TEXTEXPORTING*STREAM_LINES=LANGUAGE=D*LF=TABLESTEXT_STREAM=texttableITF_TEXT=gt_txt.*-单条项目文本更新PERFORMsave.*-清空CLEARgt_output.CLEARs3

9、.*-一定要清空防止下次双击调用对话框的时候重复REFRESH:texttable,gt_txt.*-刷新CALLMETHODalv_grid-refresh_table_display.*CALLMETHODcl_gui_cfw=flush.不管用*FREEg_container.LEAVETOSCREEN0.ENDCASE.ENDMODULE.USER_COMMAND_0101INPUTFORMSAVE.DATA:lt_text_simpleTYPETABLEOFtlineWITHHEADERLINE.DATA:ls_header_simpleLIKEthead.SAPscript:Tex

10、tHeader.*Transferdatatoheader.CLEAR:ls_header_simple,g_tdname.CONCATENATEgt_output-ebelngt_output-ebelpINTOg_tdname.ls_header_simple-tdobject=EKPO.ls_header_simple-tdname=g_tdname.ls_header_simple-tdid=F01.ls_header_simple-tdspras=D.*Savetext.CALLFUNCTIONSAVE_TEXTEXPORTINGclient=sy-mandtheader=ls_he

11、ader_simpleinsert=savemode_direct=owner_specified=local_cat=TABLESlines=gt_txtEXCEPTIONSid=1language=2name=3object=4OTHERS=5.*Checksavestatus.IFsy-subrc0.CALLFUNCTIONSAPSCRIPT_MESSAGEEXPORTINGtyp=W#ECNOTEXTEXCEPTIONSOTHERS=1.ELSE.message成功typeS.*COMMITwork.CALLFUNCTIONCOMMIT_TEXTEXPORTINGobject=EKPO

12、name=G_TDNAMEid=F01language=D*SAVEMODE_DIRECT=*KEEP=*LOCAL_CAT=*IMPORTING*COMMIT_COUNT=*TABLES*T_OBJECT=*T_NAME=*T_ID=*T_LANGUAGE=.performreadtexttablesgt_output.modifygt_outputindexg_line.cleargt_output.ENDIF.REFRESHgt_txt.ENDFORM.SAVEFORMREADTEXTTABLESP_GT_OUTPUTSTRUCTUREGT_OUTPUT.DATAtfillLIKEsy-

13、tfill.DATA:BEGINOFxtheadOCCURS1.INCLUDESTRUCTUREthead.DATA:ENDOFxthead.*-行项目文本clearg_tdname.CONCATENATEgt_output-ebelngt_output-ebelpINTOg_tdname.*SELECTSINGLE*FROMstxhCLIENTSPECIFIED*INTOgs_stxh*WHEREtdobject=EKPO*ANDtdname=g_tdname*ANDtdid=F01*ANDtdspras=D.*IFsy-subrc=0.CALLFUNCTIONSELECT_TEXTEXPO

14、RTINGid=F01language=Dname=g_tdnameobject=EKPOIMPORTINGentries=tfillTABLESselections=xthead.IFtfill0.CALLFUNCTIONREAD_TEXTEXPORTINGid=F01language=Dname=g_tdnameobject=EKPOTABLESlines=gt_txt.*LOOPATgt_txt.*CONCATENATEgt_output-txtgt_txt-tdlineINTOgt_output-txtSEPARATEDBY.*ENDLOOP.refreshtexttable.CALLFUNCTIONCONVERT_ITF_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论