Einzelnen Beitrag anzeigen

Balu der Bär
(Gast)

n/a Beiträge
 
#2

Re: Templates mit TurboDelphi

  Alt 16. Sep 2006, 09:16
Oha, dein Template war ja der reinste Horror.
Schonmal überlegt was passiert wenn man andere Variablenbezeichner eingibt?

Hier mal eine überarbeitete Version, klappt wunderbar:
XML-Code:
<?xml version="1.0" encoding="utf-8" ?>
<codetemplate xmlns="http://schemas.borland.com/Delphi/2005/codetemplates"
            version="1.0.0">
   <template name="search-string" invoke="manual">

      <point name="search-string">
      <text>search-string</text>
        <hint>suchen nach einen bestimmten string</hint>
      </point>

      <point name="Variable oder Wert">
      <text>Variable oder Wert</text>
      <hint>Wert</hint>
     </point>

     <point name="TStringList">
     <text>TStringList</text>
      <hint>TStringList</hint>
     </point>

      <point name="Text der durchsucht werden soll">
      <text>Text der durchsucht werden soll</text>
      <hint>Text</hint>
      </point>

      <point name="gesuchter String">
      <text>gesuchter String</text>
      <hint>Search String</hint>
      </point>

      <point name="slTmp">
      <text>slTmp</text>
      <hint>TStringList</hint>
      </point>

      <point name="sText">
      <text>sText</text>
      <hint>StringVariable</hint>
      </point>

      <point name="sSearch">
      <text>sSearch</text>
      <hint>StringVariable</hint>
      </point>

      <point name="i">
      <text>i</text>
      <hint>IntegerVariable</hint>
      </point>

      <description>string suchen</description>
      <author>newuser</author>

      <script language="Delphi" onenter="true" onleave="true">
      DeclareVariable(|slTmp|,|TStringList|);
      DeclareVariable(|sText|,string);
      DeclareVariable(|sSearch|,string);
      DeclareVariable(|i|,integer);
      </script>

      <code language="Delphi" delimiter="|" ><![CDATA[

  for |i| := 0 to |Variable oder Wert| -1 do
  begin
  |slTmp| := |TStringList|.Create;
  |slTmp|.Clear();
  |sText| := '|Text der durchsucht werden soll|';
  |sSearch| := '|gesuchter String|';

   while pos(|sSearch|,|sText|) <> 0 do
   begin
   |slTmp|.Add(copy(|sText|,1,pos(|sSearch|,|sText|)-1));
   delete(|sText|,1,pos(|sSearch|,|sText|));
    end;

  |slTmp|.Add(|sText|);

   if |slTmp|.Strings[i] = |sText| Then
    begin
    //
    end
      else
         begin
         MessageDlg('String gefunden',mtInformation, [mbOK], 0);
    end;//if
  end;//for

      ]]>
      </code>
   </template>
</codetemplate>
  Mit Zitat antworten Zitat