如题
解决方案 »
- 各位大虾,请问一个在DELPHI中有关用资源管理器打开文件的问题,,跪求!!!!!!!!
- SOS!!!多表查詢中﹐多條相同記錄只顯示一條的問題SOS!!!
- 怎么在MEMO控件中输出定宽文本 [A B C] 马上结帖!
- 如何得到OUTLOOK帐户列表,在线等待,先谢20分
- 如何用listview实现类资源管理器的功能
- 请提供一个FAST REPORT中文帮助的下载网址
- 谁有动态设置ODBC好一点的方法?
- 我用這個sql語句adoquery1.sql.add(‘left(width,3), height,colors from table1’)打開database.用ADOQuery1.delete;刪除的時候就出毛病
- 求模拟360界面效果示例(*注:要具体示例)
- Tedit的菜单问题...
- 如何取出字符串中的中文字,是繁体下
- teechart6在运行的时候界面不能变成中文的
还有人在吗?
unit MainForm;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, OleCtrls, MapXLib_TLB, Menus, ImgList, ComCtrls,
ToolWin, StdCtrls, Buttons, CheckLst, ComObj, BusinessSkinForm, ActnMan,
ActnCtrls, XPStyleActnCtrls, ActnList, ActnColorMaps, ActnMenus,
StdStyleActnCtrls;type
TfrmMainForm = class(TForm)
pnlMainMap: TPanel;
mapMainMap: TMap;
pnlRight: TPanel;
spltMiddle: TSplitter;
pnlSmallMap: TPanel;
mapSmallMap: TMap;
pnlOperate: TPanel;
spltRight: TSplitter;
sbMainMap: TStatusBar;
sbTime: TStatusBar;
tmMain: TTimer;
GroupBox1: TGroupBox;
clbCompany: TCheckListBox;
Panel2: TPanel;
sbAllSelect: TSpeedButton;
sbNullSelect: TSpeedButton;
sbNotSelect: TSpeedButton;
sbDelete: TSpeedButton;
amMain: TActionManager;
mmbMain: TActionMainMenuBar;
actMapOpen: TAction;
actMapExport: TAction;
actToolsSelect: TAction;
actToolsZoomin: TAction;
actToolsZoomout: TAction;
actToolsMove: TAction;
actToolsRestore: TAction;
actDataImport: TAction;
actDataDefine: TAction;
actDataGen: TAction;
actQueryDetail: TAction;
actQueryDefine: TAction;
actHelpUserguide: TAction;
actHelpAbout: TAction;
atbMain: TActionToolBar;
procedure FormShow(Sender: TObject);
procedure tmMainTimer(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure mapMainMapToolUsed(ASender: TObject; ToolNum: Smallint; X1,
Y1, X2, Y2, Distance: Double; Shift, Ctrl: WordBool;
var EnableDefault: WordBool);
procedure clbCompanyDblClick(Sender: TObject);
procedure sbAllSelectClick(Sender: TObject);
procedure sbNullSelectClick(Sender: TObject);
procedure sbNotSelectClick(Sender: TObject);
procedure sbDeleteClick(Sender: TObject);
procedure actToolsSelectExecute(Sender: TObject);
procedure actToolsZoominExecute(Sender: TObject);
procedure actToolsZoomoutExecute(Sender: TObject);
procedure actToolsMoveExecute(Sender: TObject);
procedure actDataDefineExecute(Sender: TObject);
procedure actDataGenExecute(Sender: TObject);
procedure actQueryDetailExecute(Sender: TObject);
procedure actQueryDefineExecute(Sender: TObject);
procedure actHelpAboutExecute(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
frmMainForm: TfrmMainForm;
searchLayer : Variant;implementationuses Splash, ClientDataModule, DetailDisplay, DefineTable, MakeUserTable,
DisplaySet, About;{$R *.dfm}procedure TfrmMainForm.FormShow(Sender: TObject);
var
dlg : TfrmLogin;
begin
dlg := TfrmLogin.Create(self);
//dlg.ShowModal;
//测试时候注销上一句
dlg.Free;
if dmClientDM.cdsUser.RecordCount <> 1 then
begin
Application.Terminate;
end;
actToolsSelect.Execute;
end;procedure TfrmMainForm.tmMainTimer(Sender: TObject);
begin
sbTime.Panels.Items[0].Text := FormatDateTime('YYYY-MM-DD HH:NN:SS',Now());
end;procedure TfrmMainForm.FormActivate(Sender: TObject);
begin
searchLayer := mapMainMap.Layers.Item('Canada Major Cities');
end;procedure TfrmMainForm.mapMainMapToolUsed(ASender: TObject;
ToolNum: Smallint; X1, Y1, X2, Y2, Distance: Double; Shift,
Ctrl: WordBool; var EnableDefault: WordBool);
Var
i : Integer;
fID : String;
pt : Variant;
curFeatures : Variant;
obj : Variant;
begin
pt := CreateOleObject('MapX.Point.4');
if ToolNum = miSelectTool then
begin
pt.Set(X1,Y1);
curFeatures := SearchLayer.SearchAtPoint(pt);
for i := 1 to curFeatures.Count do
begin
obj := curFeatures.Item(i);
Str(obj.FeatureID:4:0, fID);
self.clbCompany.Items.Add(obj.Name);
dmClientDM.curCompany := obj.Name;
//self.mmQueryDetail.Click;
end;
end;
//sbMainMap.Panels.Items[0].Text := Format('X = %d',pt.X);
//sbMainMap.Panels.Items[1].Text := Format('Y = %d',pt.Y);end;procedure TfrmMainForm.clbCompanyDblClick(Sender: TObject);
var
i : integer;//循环变量
begin
for i:=0 to clbCompany.Items.Count - 1 do
begin
if clbCompany.Selected[i] then
begin
dmClientDM.curCompany := clbCompany.Items.Strings[i];
// self.mmQueryDetail.Click;
exit;
end;
end;
end;procedure TfrmMainForm.sbAllSelectClick(Sender: TObject);
var
i : integer;
begin
for i:=0 to self.clbCompany.Count - 1 do
begin
self.clbCompany.Checked[i] := true;
end;
end;procedure TfrmMainForm.sbNullSelectClick(Sender: TObject);
var
i : integer;
begin
for i:=0 to self.clbCompany.Count - 1 do
begin
self.clbCompany.Checked[i] := false;
end;
end;procedure TfrmMainForm.sbNotSelectClick(Sender: TObject);
var
i : integer;
begin
for i:=0 to self.clbCompany.Count - 1 do
begin
self.clbCompany.Checked[i] := not self.clbCompany.Checked[i];
end;
end;procedure TfrmMainForm.sbDeleteClick(Sender: TObject);
var
i : integer;
begin
self.clbCompany.MultiSelect := true;
for i:=0 to self.clbCompany.Count - 1 do
begin
self.clbCompany.Selected[i] := self.clbCompany.Checked[i];
end;
self.clbCompany.DeleteSelected;
self.clbCompany.MultiSelect := false;
end;procedure TfrmMainForm.actToolsSelectExecute(Sender: TObject);
begin
mapMainMap.CurrentTool := miSelectTool;
end;procedure TfrmMainForm.actToolsZoominExecute(Sender: TObject);
begin
mapMainMap.CurrentTool := miZoomInTool;
end;procedure TfrmMainForm.actToolsZoomoutExecute(Sender: TObject);
begin
mapMainMap.CurrentTool := miZoomOutTool;
end;procedure TfrmMainForm.actToolsMoveExecute(Sender: TObject);
begin
mapMainMap.CurrentTool := miPanTool;
end;procedure TfrmMainForm.actDataDefineExecute(Sender: TObject);
var
dlg : TfrmDefineTable;
begin
dlg := TfrmDefineTable.Create(Application);
dlg.ShowModal;
dlg.Free;
end;procedure TfrmMainForm.actDataGenExecute(Sender: TObject);
var
dlg : TfrmMakeUserTable;
begin
dlg := TfrmMakeUserTable.Create(Application);
dlg.ShowModal;
dlg.Free;
end;procedure TfrmMainForm.actQueryDetailExecute(Sender: TObject);
var
dlg : TfrmDetailDisplay;
begin
dlg := TfrmDetailDisplay.Create(Application);
dlg.ShowModal;
dlg.Free;
end;procedure TfrmMainForm.actQueryDefineExecute(Sender: TObject);
var
dlg : TfrmDisplaySet;
begin
dlg := TfrmDisplaySet.Create(Application);
dlg.ShowModal;
dlg.Free;
end;procedure TfrmMainForm.actHelpAboutExecute(Sender: TObject);
var
dlg : TfrmAbout;
begin
dlg := TfrmAbout.Create(Application);
dlg.ShowModal;
dlg.Free;
end;end.
关联了,我看了D7自己的例子,我得和例子一模一样,可例子就可以执行没问题,而我得怎么也不能触发Action的执行时间,调试都走不到那一步!
方便把源码给我传过来吗? 我帮你看看
如果是自己建的话,从TActionManager双击自定义的ACTION,写一条语句保证ACTION执行不为空就OK了;
注意:可能是你把ACTION加到了ACTIVE属性为FALSE的ACTION下,这样肯定看都看不到了。
结帖!!!