怎样将一个字符串赋值给集合类型
比如
type TTextureMode = (tmTiled, tmStretched, tmCenter, tmNormal)
var textmode:TTextureMode;
a:string;
a:='tmTiled';
怎样将a赋值给textmode 因为我的a值是从数据库中读出来的
比如
type TTextureMode = (tmTiled, tmStretched, tmCenter, tmNormal)
var textmode:TTextureMode;
a:string;
a:='tmTiled';
怎样将a赋值给textmode 因为我的a值是从数据库中读出来的
解决方案 »
- 请问如何实现在软件里加上QQ临时对话功能.
- 为什么我的状态区图标处理不了鼠标消息?
- OneView1.0哪位熟悉?怎么只看到DEMO版本的?有没有其他版本的?来者有分!!!!!!
- 急!!!StringGrid控件的onRowMoved事件为什么无效?????是Delphi的BUG吗?请指教
- Web Service 最常用的控件是什麼。它們的作用?
- ACCESS数据库里不支持CASE语句?
- 有偿求解报表控件打印丢图片问题:
- 怎樣對有計算字段的數據集進行查詢后將計算字段的值保留到新的數據集中﹖
- DBCombobox选择前显示为空,选择之后要是不用了怎么再变回空?
- 如何将*.pas编译成*.dcu
- 在delphi中用代码怎样新见一个sqlserver2000的作业,并把sql语句写入其中?
- 急!!!DBGRID 导出到 EXCEL 在线==========
const
TStrTextureMode: array[0..3] of string[15] = ('tmTiled', 'tmStretched', 'tmCenter', 'tmNormal');
var
i: Integer;
begin
Result := 0;
for i := 0 to 3 do
if uppercase(value)= uppercase(TStrTextureMode[i]) then
begin
Result := i;
Break;
end;
end;procedure TForm1.Button1Click(Sender: TObject);
type
TTextureMode = (tmTiled, tmStretched, tmCenter, tmNormal);
var
textmode: TTextureMode;
a: string;
begin
a := 'tmStretched';
textmode := TTextureMode(Str2TextureMode(a));
Edit1.Text := IntToStr(Ord(textmode));
end;
type TTextureModes=set of TTextureModea:=[tmTiled, tmStretched, tmCenter, tmNormal]
因为a有16种组合可能性如果再那样一个个检查的话会十分麻烦
var
StylesNumber:Integer;
begin
StylesNumber:=0;
if (AnsiContainsText(Styles,'fsBold')) then
StylesNumber:=StylesNumber+1;
if (AnsiContainsText(Styles,'fsItalic')) then
StylesNumber:=StylesNumber+2;
if (AnsiContainsText(Styles,'fsUnderline')) then
StylesNumber:=StylesNumber+4;
if (AnsiContainsText(Styles,'fsStrikeOut')) then
StylesNumber:=StylesNumber+8;
case StylesNumber of
0: Result:=[];
1: Result:=[fsBold];
2: Result:=[fsItalic];
3: Result:=[fsBold,fsItalic];
4: Result:=[fsUnderline];
5: Result:=[fsBold,fsUnderline];
6: Result:=[fsItalic,fsUnderline];
7: Result:=[fsBold,fsItalic,fsUnderline];
8: Result:=[fsStrikeOut];
9: Result:=[fsBold,fsStrikeOut];
10: Result:=[fsItalic,fsStrikeOut];
11: Result:=[fsBold,fsItalic,fsStrikeOut];
12: Result:=[fsUnderline,fsStrikeOut];
13: Result:=[fsBold,fsUnderline,fsStrikeOut];
14: Result:=[fsItalic,fsUnderline,fsStrikeOut];
15: Result:=[fsBold,fsItalic,fsUnderline,fsStrikeOut];
end;