DELPHI自带的那个添加删除前一个后一个得那个控件不太好用,谁有一个中文并带有图标的这类控件么?DELPHI里面的太不直观,如果要自己些代码改怎么些呢
解决方案 »
- Delphi创建数据库,BDE方式
- 在輸入法imeMode中,imDisable模式是什麼意思?
- 请教:关于ListView控件使用OnData加载数据后删除某条记录的问题
- TreeView控件的RightClickSelect属性。。。详情见内。。。
- 问个dll的问题
- 请问Controls与Components的区别?
- 刚打开窗体就把光标放在edit中,怎么实现?
- 那位高手知道indy控件TIdBlockCipherIntercept(加密解密)如何使用?为何我解密的数据总是0字节?
- 两个线程的核心代码都是调用的主程序里面的函数,请问这样做是否有问题?[内详]
- 用QuickRep作报表时总计与小计的显示
- DELPHI里面数据库赋值的问题!!!!!!!!!!!!!!!!
- 一个很容易得分的问题,不信来瞧瞧!(在线等待)
1.改造提示信息。
修改DBNavigator1的提示信息即Hints属性为:
第一条
上一条
下一条
最后一条
添加记录
删除记录
修改记录
保存记录
取消编辑
刷新数据
2.改造DBNavigator1标题。
处理窗体的创建事件,修改各个按钮的标题:
procedure TForm1.FormCreate(Sender: TObject);
const a:array[0..9] of string
=('最前','向前','向后','最后','添加',
'删除','修改','保存','取消','刷新');
var
i:integer;
begin
for i:=0 to DBNavigator1.ControlCount-1 do
TNavButton(DBNavigator1.Controls[i]).Caption:=a[i];
end;
现在,界面上的按钮标题和提示信息已经全部变成中文的了,接下来就是要处理按钮执行后的对话框和异常信息框了。剩下的就交给你吧!
怎么样,解决了吧?!
procedure ChangeDBNavImage(DBnav: TDbNavigator);
var
i: Integer;
tempGlyph: TBitmap;
ExePath: string;
begin
ExePath := ExtractFilePath(Application.ExeName);
tempGlyph := TBitmap.Create;
try
with DBNav do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i].ClassName = 'TNavButton' then
begin
case TNavButton(Controls[i]).Index of
nbFirst: tempGlyph.LoadFromFile(ExePath + 'first.bmp');
nbPrior: tempGlyph.LoadFromFile(ExePath + 'previous.bmp');
nbNext: tempGlyph.LoadFromFile(ExePath + 'Next.bmp');
nbLast: tempGlyph.LoadFromFile(ExePath + 'Last.bmp');
nbInsert: tempGlyph.LoadFromFile(ExePath + 'Insert.bmp');
nbDelete: tempGlyph.LoadFromFile(ExePath + 'Delete.bmp');
nbEdit: tempGlyph.LoadFromFile(ExePath + 'Edit.bmp');
nbPost: tempGlyph.LoadFromFile(ExePath + 'Post.bmp');
nbCancel: tempGlyph.LoadFromFile(ExePath + 'Cancel.bmp');
nbRefresh: tempGlyph.LoadFromFile(ExePath + 'Refresh.bmp');
end;
TNavButton(Controls[i]).Glyph := tempGlyph;
end;
end;
end;
finally
tempGlyph.Free;
end;
end; procedure TForm1.Button1Click(Sender: TObject);
begin
ChangeDBNavImage(DBNavigator1);
end;