|
Registriert seit: 11. Jan 2009 Ort: Wilnsdorf 1.439 Beiträge Delphi XE2 Professional |
#16
Hallo nochmal,
so ich habe das jetzt noch etwas verändert, in dem ich die möglichen Zustände vorher über den ItemIndex der einzelnen Komponenten berechnen. Ich denke das das so schon ganz gut ist. Entweder werft mir Kommentare entgegen, oder Verbesserungsvorschläge. Da es ein doch recht Aufwendiges Thema war, ist der folgenden Code etwas länger. Ich hoffe die Lust verlässt Euch trotzdem nicht.
Delphi-Quellcode:
Also Danke nochmal an alle und
{Suchfubktion über Edit 1 und Edit in Verbindung aller Möglichkeiten}
procedure TFDatenauswertung.btnFilterClick(Sender: TObject); var Callback : integer; begin case cbLinking.ItemIndex of 0:case cbLinkingAfterwards.ItemIndex of 0: Callback := cbSearchOne.ItemIndex; 1: Callback := cbSearchOne.ItemIndex+3; 2: Callback := cbSearchOne.ItemIndex+6; end; 1:case cbLinkingAfterwards.ItemIndex of 0: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+10; 2: Callback := cbSearchTwo.ItemIndex+12; 3: Callback := cbSearchTwo.ItemIndex+14; end; 1: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+16; 2: Callback := cbSearchTwo.ItemIndex+18; 3: Callback := cbSearchTwo.ItemIndex+20; end; 2: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+22; 2: Callback := cbSearchTwo.ItemIndex+24; 3: Callback := cbSearchTwo.ItemIndex+26; end; end; 2:case cbLinkingAfterwards.ItemIndex of 0: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+28; 2: Callback := cbSearchTwo.ItemIndex+30; 3: Callback := cbSearchTwo.ItemIndex+32; end; 1: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+34; 2: Callback := cbSearchTwo.ItemIndex+36; 3: Callback := cbSearchTwo.ItemIndex+38; end; 2: case cbSearchOne.ItemIndex of 1: Callback := cbSearchTwo.ItemIndex+40; 2: Callback := cbSearchTwo.ItemIndex+42; 3: Callback := cbSearchTwo.ItemIndex+44; end; end; end; case Callback of 1:vst.IterateSubtree(nil,SucheCallbackEdit1,nil); 2:vst.IterateSubtree(nil,SucheCallbackEdit2,nil); 3:vst.IterateSubtree(nil,SucheCallbackEdit3,nil); 4:vst.IterateSubtree(nil,SucheCallbackEdit4,nil); 5:vst.IterateSubtree(nil,SucheCallbackEdit5,nil); 6:vst.IterateSubtree(nil,SucheCallbackEdit6,nil); 7:vst.IterateSubtree(nil,SucheCallbackEdit7,nil); 8:vst.IterateSubtree(nil,SucheCallbackEdit8,nil); 9:vst.IterateSubtree(nil,SucheCallbackEdit9,nil); 10:vst.IterateSubtree(nil,SucheCallbackEdit10,nil); 11:vst.IterateSubtree(nil,SucheCallbackEdit11,nil); 12:vst.IterateSubtree(nil,SucheCallbackEdit10,nil); 13:vst.IterateSubtree(nil,SucheCallbackEdit12,nil); 14:vst.IterateSubtree(nil,SucheCallbackEdit11,nil); 15:vst.IterateSubtree(nil,SucheCallbackEdit12,nil); 16:vst.IterateSubtree(nil,SucheCallbackEdit13,nil); 17:vst.IterateSubtree(nil,SucheCallbackEdit14,nil); 18:vst.IterateSubtree(nil,SucheCallbackEdit13,nil); 19:vst.IterateSubtree(nil,SucheCallbackEdit15,nil); 20:vst.IterateSubtree(nil,SucheCallbackEdit14,nil); 21:vst.IterateSubtree(nil,SucheCallbackEdit15,nil); 22:vst.IterateSubtree(nil,SucheCallbackEdit16,nil); 23:vst.IterateSubtree(nil,SucheCallbackEdit17,nil); 24:vst.IterateSubtree(nil,SucheCallbackEdit16,nil); 25:vst.IterateSubtree(nil,SucheCallbackEdit18,nil); 26:vst.IterateSubtree(nil,SucheCallbackEdit17,nil); 27:vst.IterateSubtree(nil,SucheCallbackEdit18,nil); 28:vst.IterateSubtree(nil,SucheCallbackEdit19,nil); 29:vst.IterateSubtree(nil,SucheCallbackEdit20,nil); 30:vst.IterateSubtree(nil,SucheCallbackEdit19,nil); 31:vst.IterateSubtree(nil,SucheCallbackEdit21,nil); 32:vst.IterateSubtree(nil,SucheCallbackEdit20,nil); 33:vst.IterateSubtree(nil,SucheCallbackEdit21,nil); 34:vst.IterateSubtree(nil,SucheCallbackEdit22,nil); 35:vst.IterateSubtree(nil,SucheCallbackEdit23,nil); 36:vst.IterateSubtree(nil,SucheCallbackEdit22,nil); 37:vst.IterateSubtree(nil,SucheCallbackEdit24,nil); 38:vst.IterateSubtree(nil,SucheCallbackEdit23,nil); 39:vst.IterateSubtree(nil,SucheCallbackEdit24,nil); 40:vst.IterateSubtree(nil,SucheCallbackEdit25,nil); 41:vst.IterateSubtree(nil,SucheCallbackEdit26,nil); 42:vst.IterateSubtree(nil,SucheCallbackEdit25,nil); 43:vst.IterateSubtree(nil,SucheCallbackEdit27,nil); 44:vst.IterateSubtree(nil,SucheCallbackEdit26,nil); 45:vst.IterateSubtree(nil,SucheCallbackEdit27,nil); end; btnReset.Enabled := true; end; procedure TFDatenauswertung.btnResetClick(Sender: TObject); begin vst.IterateSubtree(nil,SucheCallbackEditReset,nil); btnReset.Enabled := false; end; //Suche Zurücksetzten und alle geladenen Daten Anzeigen procedure TFDatenauswertung.SucheCallbackEditReset(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := true; PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit1(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Teilnehmer nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit2(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit3(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit4(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Teilnehmer nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit5(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit6(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit7(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Teilnehmer nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit8(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit9(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Teilnehmer nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit10(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Bereich nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit11(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Teilnehmer OR Bereich nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit12(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Teilnehmer nach Text Edit 1 OR Edit 2 procedure TFDatenauswertung.SucheCallbackEdit13(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Bereich nach Text Edit 1 OR Edit 2 procedure TFDatenauswertung.SucheCallbackEdit14(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich OR Teilnehmer nach Text Edit 1 OR Edit 2 procedure TFDatenauswertung.SucheCallbackEdit15(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Teilnehmer nach Text Edit 1 AND Edit 2 procedure TFDatenauswertung.SucheCallbackEdit16(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis OR Bereich nach Text Edit 1 AND Edit 2 procedure TFDatenauswertung.SucheCallbackEdit17(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich OR Teilnehmer nach Text Edit 1 AND Edit 2 procedure TFDatenauswertung.SucheCallbackEdit18(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Teilnehmer nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit19(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Bereich nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit20(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Teilnehmer AND Bereich nach Text Edit 1 procedure TFDatenauswertung.SucheCallbackEdit21(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := (EDManFilter1.Text='') or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Teilnehmer nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit22(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Bereich nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit23(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich AND Teilnehmer nach Text Edit 1 OR Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit24(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) or (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Teilnehmer nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit25(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Ereignis AND Bereich nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit26(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Ereignis))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; //Suche in Spalte Bereich AND Teilnehmer nach Text Edit 1 AND Text Edit 2 procedure TFDatenauswertung.SucheCallbackEdit27(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean); var DatenMB : TOMBSerie; begin DatenMB := TOMBSerie(VST.GetNodeData(Node)^); VST.IsVisible[Node] := ((EDManFilter1.Text='') and (EDManFilter2.Text='')) or (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter1.Text), LowerCase(DatenMB.Teilnehmer))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Bereich))>0) and (Pos(LowerCase(EDManFilter2.Text), LowerCase(DatenMB.Teilnehmer))>0); PBFortschritt.Position := PBFortschritt.Position +1; if PBFortschritt.Position = PBFortschritt.Max then PBFortschritt.Position := 0; end; Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt. |
![]() |
Ansicht |
![]() |
![]() |
![]() |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
![]() |
![]() |