亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

RichEdit的自動格式化

2019-11-17 05:12:30
字體:
來源:轉載
供稿:網友

  這是一個注冊EXE,OBJ,BIN三種類型文件當其被RichEdit打開時會自動轉換為16進制顯示的例子

C++ Builder

請參照Delphi的例子

Delphi

第一:要從TCoriversion派生出一個新類

第二:重載CorrvertReadStream函數

第三:在主窗體的OnCreate函數中登記文件類型。用RichEdit的.RegisterConversionFormat函數

unit main;

interface

uses

Windows, Messages, SysUtils, Classes, Controls, Forms, Dialogs,

Menus, StdCtrls, ComCtrls;



type

TMainForm = class(TForm)

MainMenu1: TMainMenu;

MenuFile: TMenuItem;

MenuOpen: TMenuItem;

MenuSaveAs: TMenuItem;

N1: TMenuItem;

MenuExit: TMenuItem;

OpenDlg: TOpenDialog;

SaveDlg: TSaveDialog;

Rich: TRichEdit;

StatusBar: TStatusBar;

PRocedure FormCreate(Sender: TObject);

procedure MenuOpenClick(Sender: TObject);

procedure MenuSaveAsClick(Sender: TObject);

procedure MenuExitClick(Sender: TObject);

procedure MenuPopupPopup(Sender: TObject);

procedure MenuSelectAllClick(Sender: TObject);

procedure MenUCopyClick(Sender: TObject);

private

procedure Progress(Address:LongInt);

end;

var

MainForm: TMainForm;

implementation

{$R *.DFM}

type

THexConversion = class(TConversion)

public

function ConvertReadStream(Stream:TStream; Buffer:PChar;

BufSize:integer): integer; override;

end;

// This implements a callback procedure used by TRichEdit when loading

// a file. Gets called repeatedly until stream is empty.

//

function THexConversion.ConvertReadStream(Stream:TStream; Buffer:PChar;

BufSize:integer): intege

var s:string;

buf:array[1..16] of char;

i,n:integer;

begin

Result := 0;

if BufSize <= 82 then Exit;

s := Format(;%.5x ,[Stream.Position]);

n := Stream.Read(buf,16);

if n = 0 then Exit;

for i := 1 to n do

begin

AppendStr(s,IntToHex(ord(buf[i]),2)+ );

if i mod 4 = 0 then AppendStr(s, );

end;

AppendStr(s,StringOfChar( ,62-length(s)));


for i := 1 to n do

begin

if (buf[i] < #32) or (buf[i] > #126) then

buf[i] := .;

AppendStr(s,buf[i]);

end;

AppendStr(s,#13#10);

StrPCopy(Buffer,s);

Result := length(s);

if Stream.Position and $FFF = 0 then MainForm.Progress(Stream.Position);

end;

procedure TMainForm.Progress(Address:LongInt);

begin

StatusBar.SimpleText := Reading... $+IntToHex(Address,5);

StatusBar.Update;

end;

procedure TMainForm.FormCreate(Sender: TObject);

begin

Rich.RegisterConversionFormat(bin,THexConversion);

Rich.RegisterConversionFormat(obj,THexConversion);

Rich.RegisterConversionFormat(exe,THexConversion);

end;

procedure TMainForm.MenuOpenClick(Sender: TObject);

var fname:string;

begin

if OpenDlg.Execute then

begin

try

Screen.Cursor := crHourglass;

fname := ExtractFileName(OpenDlg.Filename);

StatusBar.SimpleText := Reading...;

Rich.Lines.Clear;

application.ProcessMessages;

try

Rich.Lines.LoadFromFile(OpenDlg.Filename);

StatusBar.SimpleText := fname;

except on E:EFOpenError do

begin

StatusBar.SimpleText := ;

MessageDlg(Format(Cant open file %s.,[fname]),mtError,[mbOk],0);

end;

end;

finally

Screen.Cursor := crDefault;

end;

end;

end;

procedure TMainForm.MenuSaveAsClick(Sender: TObject);

begin

SaveDlg.Filename := ChangeFileExt(OpenDlg.FileName,.txt);

if SaveDlg.Execute then

Rich.Lines.SaveToFile(SaveDlg.FileName);

end;

procedure TMainForm.MenuExitClick(Sender: TObject);

begin

Close;

end;

end.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
免费91麻豆精品国产自产在线观看| 热久久免费国产视频| 欧美综合一区第一页| 九九精品视频在线观看| 欧美视频在线看| 欧美性色xo影院| 国产精品成人免费视频| 日韩av在线网站| 91国自产精品中文字幕亚洲| 国产欧美一区二区三区四区| 日韩av在线不卡| 久久精品国产亚洲一区二区| 亚洲无亚洲人成网站77777| 久久久久久久久久av| 欧美一区二区三区免费观看| 亚洲成人久久电影| 亚洲mm色国产网站| 亚洲日本aⅴ片在线观看香蕉| 国产精品va在线播放| 国产精品久久久久久婷婷天堂| 欧美极度另类性三渗透| 精品久久久精品| 欧洲s码亚洲m码精品一区| 国产精品欧美久久久| 久久手机免费视频| 国自产精品手机在线观看视频| 欧美国产乱视频| 久久久久久国产精品三级玉女聊斋| 亚洲精品aⅴ中文字幕乱码| 色婷婷**av毛片一区| 蜜臀久久99精品久久久久久宅男| 欧美成人剧情片在线观看| 亚洲欧洲午夜一线一品| 国产一区二区三区高清在线观看| 日韩在线免费观看视频| 欧美日韩xxx| 色系列之999| 久青草国产97香蕉在线视频| 精品亚洲精品福利线在观看| 精品国产一区二区三区四区在线观看| 在线不卡国产精品| 国产精品一区二区三区久久| 在线国产精品视频| 亚洲天堂久久av| 清纯唯美日韩制服另类| 亚洲精品美女视频| 日韩视频中文字幕| 中文字幕久精品免费视频| 秋霞午夜一区二区| 亚洲黄色av女优在线观看| 98精品国产高清在线xxxx天堂| 欧美丰满片xxx777| 国产精品免费在线免费| 欧美日韩美女视频| 久久久亚洲网站| 欧美专区在线播放| 日本一欧美一欧美一亚洲视频| 最近的2019中文字幕免费一页| 91经典在线视频| 精品国产网站地址| 成人黄色激情网| 亚洲男人天堂视频| 久久久久久国产精品三级玉女聊斋| x99av成人免费| 啊v视频在线一区二区三区| 国产精品成人va在线观看| 欧美激情第1页| 久久黄色av网站| 视频一区视频二区国产精品| 18性欧美xxxⅹ性满足| 庆余年2免费日韩剧观看大牛| 丰满岳妇乱一区二区三区| 91夜夜揉人人捏人人添红杏| 国产福利成人在线| 欧美自拍视频在线观看| 亚洲精品91美女久久久久久久| 国产精品爱久久久久久久| 黄色成人av网| 热re91久久精品国99热蜜臀| 国产九九精品视频| 日韩视频在线免费| 成人性教育视频在线观看| 国产精品国内视频| 亚洲国产精品成人一区二区| 丝袜美腿精品国产二区| 国产精品一区=区| 国产精品一区二区久久精品| 亚洲自拍偷拍福利| 日韩免费观看视频| 97精品免费视频| 亚洲网站在线播放| 黑人极品videos精品欧美裸| 国内精品久久久久久久| 青青精品视频播放| 国产精品久久久久国产a级| 亚洲人成在线电影| 国产精品jizz在线观看麻豆| 日本午夜在线亚洲.国产| 亚洲色图偷窥自拍| 欧美一级免费看| 国产精品免费久久久久久| 国产一区二区三区丝袜| 国产精品电影观看| 国产欧美亚洲精品| 欧美大成色www永久网站婷| 国产精品久久久久久五月尺| 国产一区二区三区网站| 中文字幕精品在线视频| 中文字幕欧美日韩在线| 国产一区二区动漫| 日韩中文字幕网址| 69av在线视频| 日韩精品欧美国产精品忘忧草| 久久在线观看视频| 亚洲成色www8888| 亚洲高清免费观看高清完整版| 国产91在线视频| 狠狠色狠狠色综合日日小说| 欧美日韩在线视频观看| 久久91亚洲精品中文字幕| 日韩在线视频观看正片免费网站| 91精品国产777在线观看| 久久久久久97| 国产亚洲激情在线| 精品久久久久久久久久ntr影视| 日韩欧美中文字幕在线播放| 91精品国产高清久久久久久| 九九精品在线观看| 国产成人亚洲综合| 97热精品视频官网| 亚洲电影免费观看高清完整版在线观看| 国产精品99久久久久久www| 国产精品白嫩初高中害羞小美女| 成人写真福利网| 国产精品扒开腿做爽爽爽男男| 日韩亚洲精品电影| 久久视频在线视频| 日本久久久a级免费| 国产视频999| 欧美性猛交xxx| 国产日韩亚洲欧美| 国产免费久久av| 国产精品中文字幕在线观看| 亚洲欧洲一区二区三区在线观看| 精品无码久久久久久国产| 日韩在线视频网站| 欧美电影院免费观看| 欧美最顶级的aⅴ艳星| 日韩在线精品一区| 欧美在线精品免播放器视频| 亚洲欧美一区二区三区四区| 亚洲sss综合天堂久久| 国产精品成熟老女人| 亚洲欧美精品在线| 亚洲欧美变态国产另类| 91精品在线国产| 一区二区三区视频观看| 国产91免费观看| 亚洲跨种族黑人xxx| 91福利视频在线观看| 国产97免费视| 日韩成人黄色av| 亚洲在线视频福利| 欧美在线观看网址综合|