delphi中SelLength有什么作用? 请帮我分析一下下面代码的意思

作者&投稿:巧匡 (若有异议请与网页底部的电邮联系)
delphi中SelLength是什么意思?比如memo1.SelLength是什么意思?~

选择的字串的长度

这是二分查找的代码。
static int binarySearch(int[] array, int size, int value) { //在大小为size的数组array中,查找value
int lo = 0; // 起点
int hi = size - 1; //终点
while (lo <= hi) { 当左右范围不空时循环
final int mid = (lo + hi) >>> 1; //这里好象多了一个大于号?,用于取左右的中间数
final int midVal = array[mid]; // 取出中间位置的元素值
if (midVal < value) { // 如偏小,则下次往右找(起点在本次中间的右一个位置)
lo = mid + 1;
} else if (midVal > value) { //如偏大,则下次往左找(起点在本次中间的左一个位置) hi = mid - 1;
} else { //那就是相等,即找到了
return mid; // value found 返回找到的位置
}
}
return ~lo; // value not present 该找的都找了仍未找到,返回未找到标记
}

with Sender as TEdit do// 是把当前发送消息的控件转换成TEdit类型,因为原始是TObject类型的。 效果和with TEdit(Sender) do是一样的,但是用as更安全。
if (Text = '') //如果当前Edit的内容为空
or (Text[SelStart] = ' ')// 或者选择的第一个字符为空(光标在开头),selStart为Edit.SelStart
or (SelLength = Length(Text)) then// 或者选择了全部。 sellength即为Edit.Sellength

if Key in ['a'..'z'] then Key := UpCase(Key);

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
with Sender as TEdit do//什么意思?// 如果当前控件类型是TEDit(编辑框)类型 则继续往下做
if (Text = '')
or (Text[SelStart] = ' ')//SelStart什么意思//不是变量!!当前光标在Edit中停留位置值。比如EDIT中当前值为ERP,而光标停留在ER|P 的R处,那么Text[SelStart]值显示的是R
or (SelLength = Length(Text)) then//SelLength什么意思//当前选中字符串长度,如当前选中为ERP,则SelLength=3

if Key in ['a'..'z'] then Key := UpCase(Key);
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
with Sender as TEdit do//什么意思? 判断Sender是不是tedit
if (Text = '')
or (Text[SelStart] = ' ')//SelStart什么意思 选择的开始位子
or (SelLength = Length(Text)) then//SelLength什么意思 选择的字串长度

if Key in ['a'..'z'] then Key := UpCase(Key);
end;


elphi 做一个简单的绘图软件,但是鼠标在Timage和paintbox上绘图点坐 ...
屏幕是像素点,当然是整数的,小数的数值要根据屏幕大小换算为整数。向下为正的问题:自己建一个坐标系类,所有数值经过坐标系类转化一下

Delphi中如何把函数代码调出主程序,写到“DLL”中并调用?
只要编译上面的代码,就可以玫揭桓雒�狣elphi.dll的动态链接库。现在,让我们来看看有哪些需要注意的地方: 1.在DLL中编写的函数或过程都必须加上stdcall调用参数。在Delphi 1或Delphi 2环境下该调用参数是far。从Delphi 3以后将这个参数变为了stdcall,目的是为了使用标准的Win32参数传递技术来代替优化的register参数...

如何给《电脑爱好者》杂志社投稿?
在D elphi、Visual、Basic、Visual、FoxPro、Pascal等语言中,大小写所表示的意义是相同的,因此,在书写时采用单词首字母大写的约定,如: Write、If、Then、FileOpen、FileClose等。对控件、构件及普通单词等还应注意拼写正确,不要出现缺(或多)字母、排序混乱、大小写不规范的现象,能在屏幕图中找到的严格按图中英文单...

elphi 7是什么
Delphi 7吧~~~delphi 开放分类: 编程、开发工具、delphi、VCL、CodeGear 在古希腊神话里,DELPHI是智慧女神,米开朗基罗在意大利有著名的DELPHI雕像 。由Borland公司推出的Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进...

Delphi 中串口通讯的实现
_elphi 是新一代可视化开发工具,它具有功能强大、简便易用和代码执行速度快等特点,是全球公认的快速应用开发工具技术的先驱者,它越来越在构架企业信息系统方面发挥着重要作用。由于Delphi 这些显著特点,许多程序员选择Delphi作为开发工具编制各种应用程序。但是,令人惋惜的是Delphi没有自带串口通讯的控件,...

qq 中.db的文件怎样查看
.db文件是数据库文件,只有用支持.db格式的数据库软件才能够打开,比如:access mysql 或者是elphi 、VB、VC等等编程类软件都可以打开的。但显示 的数据方式不一定一样。有些专用软件DB数据是加密不公开的,普通方式还无法正常打开,或者说打开时乱码 ...

怎样用电子邮件向杂志社投稿?
在D elphi、Visual、Basic、Visual、FoxPro、Pascal等语言中,大小写所表示的意义是相同的,因此,在书写时采用单词首字母大写的约定,如: Write、If、Then、FileOpen、FileClose等。 对控件、构件及普通单词等还应注意拼写正确,不要出现缺(或多)字母、排序混乱、大小写不规范的现象,能在屏幕图中找到的严格按图中英文...

期刊投稿边框如何设置?
比如:goto语句是C语言中的关键字,Goto则不是;printf是C语言的一个内部函数,Printf则不是。在D elphi、Visual、Basic、Visual、FoxPro、Pascal等语言中,大小写所表示的意义是相同的,因此,在书写时采用单词首字母大写的约定,如: Write、If、Then、FileOpen、FileClose等。对控件、构件及普通单词等还应注意拼写正确,...

如何向电脑爱好者投稿?
比如:goto语句是C语言中的关键字,Goto则不是;printf是C语言的一个内部函数,Printf则不是。在D elphi、Visual、Basic、Visual、FoxPro、Pascal等语言中,大小写所表示的意义是相同的,因此,在书写时采用单词首字母大写的约定,如: Write、If、Then、FileOpen、FileClose等。对控件、构件及普通单词等还应注意拼写正确,...

科尔沁左翼后旗18779697581: delphi中SelLength是什么意思?比如memo1.SelLength是什么意思? -
仝的盐酸: 选择的字串的长度

科尔沁左翼后旗18779697581: delphi中SelLength有什么作用? 请帮我分析一下下面代码的意思 -
仝的盐酸: procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin with Sender as TEdit do//什么意思?// 如果当前控件类型是TEDit(编辑框)类型 则继续往下做 if (Text = '') or (Text[SelStart] = ' ')//SelStart什么意思//不是变量!!当前光标...

科尔沁左翼后旗18779697581: Delphi编辑记事本问题
仝的盐酸: Memo不能对文字进行单独处理的.就跟系统的记事本一样,要调整就整篇一起调. 如果要像Word那样对单独的文字进行字体、颜色等处理,请使用RichEdit RichEdit里面有个SelStart,可以指定要设置的字体的起始位置,SelLength,可以指定长度.SelAttributes,是字体的属性,其Name是字体名字,Size是字体大小,Color是字体颜色,Style就是字体的加粗斜体下划线设置等等.主要就是通过这几个属性进行设置了,自己多试几次就知道了.

科尔沁左翼后旗18779697581: delphi 怎样在memo查找某个字符? -
仝的盐酸: 很简单啊!procedure TForm1.btnSearchClick(Sender: TObject); var SearchText:string; k:integer; begin SearchText:=edit1.Text; //查找edit1中输入的文本 k:=pos(SearchText,memo1.Text); //求出首次出现SearchText的位置 if k=0 then ...

科尔沁左翼后旗18779697581: Delphi中怎么设置richedit中的文本的对齐方式? -
仝的盐酸: RichEdit1.SelectAll; RichEdit1.Paragraph.Alignment:=taLeftJustify; // switch for other alignments RichEdit1.SelLength:=0;

科尔沁左翼后旗18779697581: 用delphi7怎么编写记事本的查找替换功能 -
仝的盐酸: 这要看你用哪个控件实现记事本的编辑控件了, TMemo, TRichEdit, 还是别的, 以TMemo为例, 可以这样实现 procedure TForm1.btnSearchClick(Sender: TObject); var SearchText:string; k:integer; begin SearchText:=edit1.Text; //查找edit1中...

科尔沁左翼后旗18779697581: 那位高手解释一下下面关于查找框命令的代码,最好解释下这种格式的原型,我很模糊———delphi天使 -
仝的盐酸: 1. InitPos:=Memo1.SelStart+Memo1.SelLength Memo1.SelStart 是memo里选中的文字的开始位置 Memo1.SelLength 是memo里选中的文字的长度 两个加起来就是 选中文字的 结束位置2. FoundPos:=Pos(FindDialog1.FindText,Copy(Memo1.Text...

科尔沁左翼后旗18779697581: delphi 在edit的Change事件里获取edit的部分选中状态的内容 -
仝的盐酸: 看看这个 能不能满足你 procedure TForm1.Edit1Change(Sender: TObject); var p:Integer; begin p:=Pos('en',Edit1.text); if p>0 then Edit1.SelStart := p-1; Edit1.SelLength := 2; end;

科尔沁左翼后旗18779697581: delphi DBmemo 编辑后如何从第一行开始显示? -
仝的盐酸: 你加入以下代码试一下: DBMemo1.SelStart:=0;DBMemo1.SetFocus;DBMemo1.SelLength:=1;DBMemo1.SelLength:=0;

科尔沁左翼后旗18779697581: delphi的复制,剪切,粘贴的代码怎么写 -
仝的盐酸: 复制: memo1.SelectAll;//SelectAll就是全选,只有先选择才能复制、剪切操作.如果想选某几个字可以使用SelStart和SelLength选择 memo1.CopyToClipboard;//复制到粘贴板 剪切: memo1.SelectAll; memo1.CutToClipboard; 粘贴:memo1.PasteFromClipboard;

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网