...letztendlich über ein form, welche mittels hotkey aufgerufen kann und ein Memdataset in form eines Grids darstellt.
als zB über einen timer und GetASyncKeystate, formStyle StayOnTop
Ich habe den Designer ein wenig erweitert.
Mit folgendem Code füge ich meine Konstanten in einer Combobox in der Toolbar des Designers ein.
Ob alles funktioniert muss ich aber noch Testen.
Angezeigt wird die Combobox mit den Konstanzen schon.
Delphi-Quellcode:
var
designer: TfrxDesignerForm;
myDesigner: TfrxCustomDesigner;
cbb2: TComboBox;
tlb2: TToolBar;
begin
myDesigner := TfrxCustomDesigner(frxDesignerClass.NewInstance);
myDesigner.CreateDesigner(nil, frxReport);
frxReport.Designer := MyDesigner;
designer := TfrxDesignerForm(frxReport.Designer);
cbb2 := TComboBox.Create(Self);
tlb2 := TToolBar.create(self);
tlb2.Parent:= Designer.DockTop;
cbb2.Parent := tlb2;
cbb2.Items.Add('Anzahl');
cbb2.Items.Add('Ausfuehrung');
cbb2.Items.Add('Box');
cbb2.Items.Add('Breite');
cbb2.Items.Add('Durchmesser');
cbb2.Items.Add('Waage');
Designer.Showmodal;
und mit folgendem Code kann man einen weitern Tab im Databaum hinzufügen und die Konstanten z.B in einer Listbox anzeigen
Delphi-Quellcode:
lb_Constanten := TListBox.Create(self);
Pn_Constanten := TPanel.Create(Self);
Designer.Show;
for x := 0 to Designer.DataTree.ControlCount - 1 do
begin
myClassname := Designer.DataTree.Controls[x].ClassType.ClassName;
if myClassname = 'TTabSet' then
begin
MyTabs := TTabSet(Designer.DataTree.Controls[x]);
Break;
end;
end;
Pn_Constanten.parent := Designer.DataTree.DataPn.parent;
Pn_Constanten.Align := Designer.DataTree.DataPn.Align;
Pn_Constanten.BoundsRect := Designer.DataTree.DataPn.BoundsRect ;
Pn_Constanten.Visible := False;
lb_Constanten.Parent := Pn_Constanten;
MyTabs.Tabs.AddObject('TransLations', Pn_Constanten);
lb_Constanten.Items := cbb2.Items;
lb_Constanten.Align := alClient;
Designer.DataTree.UpdateItems;
Ist alles noch nicht perfekt aber der Ansatz gefällt mit gut
Jetzt möchte ich natürlich noch die Translate Funktion per doppelklick auf die Combobox oder Listbox in die Memos schreiben.
Hat da jemand einen Tipp?