NEED HELP IN C++

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Marcin Borkowski

    NEED HELP IN C++

    Hello

    I need some small help in the Borland C++ Builder.
    I need to do something with string in format like "var1|var2|var3 |var4|" and
    add it to some ComboBox (Items -> Add("var1"), Items -> Add("var2") etc.).

    Help me, please. How can i do it in the "while" function or something?

    Best regards
    Martin




  • Wolfgang Senfter

    #2
    Re: NEED HELP IN C++

    Marcin Borkowski wrote:
    [color=blue]
    > I need to do something with string in format like "var1|var2|var3 |var4|"
    > and add it to some ComboBox (Items -> Add("var1"), Items -> Add("var2")
    > etc.).[/color]

    use the AnsiString.

    there are 2 methods. substr and pos ( or strpos ).

    AnsiString tmp = "var1|var2|var3 ";
    int charPos = tmp.pos("|");

    so you have the position of the |
    and with the substr you can copy the part you want

    syntax: substr(index, count);

    example:
    Items->Add(tmp.substr (0, charPos));

    delete the elemnt you added and repeat that until pos returns an error.


    --
    Greetings

    Wolfgang

    Comment

    • Marcin Borkowski

      #3
      Re: NEED HELP IN C++ - more help!

      don't work :(
      i don't know c++ very well but i need to do some changes in source code that
      i have got :(

      PLEASE, could you write me some whilte instruction 4 this problem?
      I only need to add informations from string in format "var1|var2|var3 " to
      the ComboBox:

      It should create something like this:

      ComboBox -> Items->Add("var1");
      ComboBox -> Items->Add("var2");
      ComboBox -> Items->Add("var3");

      Adn i don't know how can i do it in while instruction :(

      PLEASE, PLEASE and one more time ------> PLEASE :(

      Best regards,
      Martin


      U¿ytkownik "Wolfgang Senfter" <ws@wwww.at> napisa³ w wiadomoœci
      news:3f72c9c1@e-post.inode.at.. .[color=blue]
      > Marcin Borkowski wrote:
      >[color=green]
      > > I need to do something with string in format like "var1|var2|var3 |var4|"
      > > and add it to some ComboBox (Items -> Add("var1"), Items -> Add("var2")
      > > etc.).[/color]
      >
      > use the AnsiString.
      >
      > there are 2 methods. substr and pos ( or strpos ).
      >
      > AnsiString tmp = "var1|var2|var3 ";
      > int charPos = tmp.pos("|");
      >
      > so you have the position of the |
      > and with the substr you can copy the part you want
      >
      > syntax: substr(index, count);
      >
      > example:
      > Items->Add(tmp.substr (0, charPos));
      >
      > delete the elemnt you added and repeat that until pos returns an error.
      >
      >
      > --
      > Greetings
      >
      > Wolfgang[/color]


      Comment

      • Karl Heinz Buchegger

        #4
        Re: NEED HELP IN C++ - more help!



        Marcin Borkowski wrote:[color=blue]
        >
        > don't work :(
        > i don't know c++ very well but i need to do some changes in source code that
        > i have got :([/color]

        Hire a programmer to do it.
        That's what we are paid for.


        --
        Karl Heinz Buchegger
        kbuchegg@gascad .at

        Comment

        • Marcin Borkowski

          #5
          Re: NEED HELP IN C++ - more help!

          If you don't know answer 4 my question, don't post, please.
          This is not the shop with help.


          U¿ytkownik "Karl Heinz Buchegger" <kbuchegg@gasca d.at> napisa³ w wiadomoœci
          news:3F72D4B5.C FF1B152@gascad. at...[color=blue]
          >
          >
          > Marcin Borkowski wrote:[color=green]
          > >
          > > don't work :(
          > > i don't know c++ very well but i need to do some changes in source code[/color][/color]
          that[color=blue][color=green]
          > > i have got :([/color]
          >
          > Hire a programmer to do it.
          > That's what we are paid for.
          >
          >
          > --
          > Karl Heinz Buchegger
          > kbuchegg@gascad .at[/color]


          Comment

          • Attila Feher

            #6
            Re: NEED HELP IN C++ - more help!

            Marcin Borkowski wrote:[color=blue]
            > If you don't know answer 4 my question, don't post, please.
            > This is not the shop with help.[/color]

            Don't top post.



            And don't demand help. Ask. So far you have got all what you have payed
            for.

            --
            Attila aka WW


            Comment

            • Karl Heinz Buchegger

              #7
              Re: NEED HELP IN C++ - more help!



              Marcin Borkowski wrote:[color=blue]
              >
              > If you don't know answer 4 my question, don't post, please.
              > This is not the shop with help.
              >[/color]

              1) Don't top post
              2) It would be good idea to actually *show* us what
              doesn't work.
              What have you tried?
              What results did you get?

              Don't write: "don't work :("
              But instead write: I used this code

              <insert your code here>

              but it does not do <insert what you expect your code to do>

              and somebody will show you how it's done. You actually might
              learn something by doing so.
              But be warned: no Borland extensions. We discuss standard C++
              only in this NG. The std::string class can do perfectly what
              you want to do.

              --
              Karl Heinz Buchegger
              kbuchegg@gascad .at

              Comment

              • Frank Schmitt

                #8
                Re: NEED HELP IN C++

                Wolfgang Senfter <ws@wwww.at> writes:
                [color=blue]
                > Marcin Borkowski wrote:
                >[color=green]
                > > I need to do something with string in format like "var1|var2|var3 |var4|"
                > > and add it to some ComboBox (Items -> Add("var1"), Items -> Add("var2")
                > > etc.).[/color]
                >
                > use the AnsiString.[/color]

                Please don't post OT answers - AnsiString is not a part of standard C++.
                Use std::string instead.

                kind regards
                frank

                --
                Frank Schmitt
                4SC AG phone: +49 89 700763-0
                e-mail: frankNO DOT SPAMschmitt AT 4sc DOT com

                Comment

                • Buster Copley

                  #9
                  Re: NEED HELP IN C++ - more help!

                  Marcin Borkowski wrote:[color=blue]
                  > If you don't know answer 4 my question, don't post, please.
                  > This is not the shop with help.[/color]

                  You should ask this question on Borland's newsgroups.
                  You can sign up at (hold on while I google for
                  "Borland newsgroups", just a second ... )


                  I don't have Builder installed so I can't look this stuff
                  up in the help files or test my code. You'll gave to check
                  the details yourself.

                  // Put these declarations in the 'TForm1' class
                  // in the 'Unit1.h' file.
                  TComboBox * ComboBoxes [4];
                  void __fastcall FillComboBoxes (AnsiString s);
                  struct EFillComboError { };

                  // Put this in the 'TForm1' constructor in 'Unit1.cpp'.
                  ComboBoxes [0] = ComboBox1;
                  ComboBoxes [1] = ComboBox2;
                  ComboBoxes [2] = ComboBox3;
                  ComboBoxes [3] = ComboBox4;

                  // Put this definition in 'Unit1.cpp'.
                  void __fastcall TForm1::FillCom boBoxes (AnsiString AString)
                  {
                  std::auto_ptr <TStringList> StringList (new TStringList);

                  StringList->Delimiter = "|"; // ?? Check in help.
                  StringList->DelimitedTex t = AString;

                  if (StringList->Count != 4) throw EFillComboError ();

                  for (int i = 0; i != 4; ++ i)
                  ComboBoxes [i]->Text = StringList->Strings [i];
                  }

                  Comment

                  • Christopher Benson-Manica

                    #10
                    Re: NEED HELP IN C++ - more help!

                    Buster Copley <buster@none.co m> spoke thus:
                    [color=blue]
                    > You should ask this question on Borland's newsgroups.[/color]

                    A noble thought, but from what I can see very few people post there. OP would
                    probably do better on comp.os.ms-windows.program mer.win32.

                    --
                    Christopher Benson-Manica | Jumonji giri, for honour.
                    ataru(at)cybers pace.org |

                    Comment

                    • Buster Copley

                      #11
                      Re: NEED HELP IN C++ - more help!

                      Christopher Benson-Manica wrote:
                      [color=blue]
                      > Buster Copley <buster@none.co m> spoke thus:
                      >[color=green]
                      >>You should ask this question on Borland's newsgroups.[/color]
                      >
                      > A noble thought, but from what I can see very few people post there. OP would
                      > probably do better on comp.os.ms-windows.program mer.win32.[/color]

                      I used to hang around on borland.public. cppbuilder.lang uage.cpp quite
                      a lot. The traffic was high and the TeamB volunteers were helpful and
                      would answer pretty much any and all queries. The off-topic police
                      didn't seem to be too much in force and the atmosphere was friendly.

                      Since there is a fairly large number of borland.public. cppbuilder.*
                      groups, some of them don't get many posts, but language.cpp, nativeapi,
                      vcl.components.[using|writing] and a few others are certainly worth
                      checking out.

                      For this particular question, borland.public. cppbuilder.lang uage.cpp is
                      the place to go. General Win32 programmers won't know their AnsiStrings
                      from their elbows.

                      Regards,
                      Buster.

                      Comment

                      • Christopher Benson-Manica

                        #12
                        Re: NEED HELP IN C++ - more help!

                        Buster Copley <buster@none.co m> spoke thus:
                        [color=blue]
                        > For this particular question, borland.public. cppbuilder.lang uage.cpp is
                        > the place to go. General Win32 programmers won't know their AnsiStrings
                        > from their elbows.[/color]

                        My apologies - my news server apparently doesn't carry b.p.c.language. cpp, only
                        b.p.c.language (and some other zero-traffic Borland groups). Now I'm left to
                        wonder why my news server hates me ;)

                        --
                        Christopher Benson-Manica | Jumonji giri, for honour.
                        ataru(at)cybers pace.org |

                        Comment

                        • Buster Copley

                          #13
                          Re: NEED HELP IN C++ - more help!

                          Christopher Benson-Manica wrote:[color=blue]
                          > Buster Copley <buster@none.co m> spoke thus:
                          >[color=green]
                          >>For this particular question, borland.public. cppbuilder.lang uage.cpp is
                          >>the place to go. General Win32 programmers won't know their AnsiStrings
                          >>from their elbows.[/color]
                          >
                          > My apologies - my news server apparently doesn't carry b.p.c.language. cpp, only
                          > b.p.c.language (and some other zero-traffic Borland groups). Now I'm left to
                          > wonder why my news server hates me ;)[/color]

                          Borland reorganised the hierarchy a while back and some servers haven't
                          yet caught up. (Even) Google had it wrong last time I looked.

                          Regards,
                          Buster.

                          Comment

                          • Buster Copley

                            #14
                            Re: NEED HELP IN C++ - more help!

                            Buster Copley wrote:[color=blue]
                            > Marcin Borkowski wrote:
                            >
                            > I don't have Builder installed so I can't look this stuff
                            > up in the help files or test my code. You'll gave to check
                            > the details yourself.[/color]
                            [color=blue]
                            > // Put these declarations in the 'TForm1' class
                            > // in the 'Unit1.h' file.
                            > TComboBox * ComboBoxes [4];
                            > void __fastcall FillComboBoxes (AnsiString s);
                            > struct EFillComboError { };
                            >
                            > // Put this in the 'TForm1' constructor in 'Unit1.cpp'.
                            > ComboBoxes [0] = ComboBox1;
                            > ComboBoxes [1] = ComboBox2;
                            > ComboBoxes [2] = ComboBox3;
                            > ComboBoxes [3] = ComboBox4;
                            >
                            > // Put this definition in 'Unit1.cpp'.
                            > void __fastcall TForm1::FillCom boBoxes (AnsiString AString)
                            > {
                            > std::auto_ptr <TStringList> StringList (new TStringList);
                            >
                            > StringList->Delimiter = "|"; // ?? Check in help.
                            > StringList->DelimitedTex t = AString;
                            >
                            > if (StringList->Count != 4) throw EFillComboError ();
                            >
                            > for (int i = 0; i != 4; ++ i)
                            > ComboBoxes [i]->Text = StringList->Strings [i];
                            > }[/color]

                            Sorry, that doesn't do what you asked at all.
                            This is possibly closer:

                            void __fastcall
                            TForm1::FillCom boBox (TComboBox * ComboBox, AnsiString AString)
                            {
                            auto_ptr <TStringList> StringList (new TStringList);

                            StringList->Delimiter = "|"; // ?? Check in help.
                            StringList->DelimitedTex t = AString;

                            ComboBox->Items->Clear (); // ?? No idea if that's the right idiom

                            for (int i = 0, n = StringList.Coun t; i != n; ++ i)
                            {
                            ComboBox->Add (StringList->Strings [i]);
                            }
                            }

                            Comment

                            • Buster

                              #15
                              Re: NEED HELP IN C++ - more help!

                              Checked and tested.

                              void __fastcall TForm1::FillCom boBox(TComboBox * ComboBox, AnsiString AString)
                              {
                              std::auto_ptr <TStringList> StringList (new TStringList);
                              StringList->Delimiter = '|';
                              StringList->DelimitedTex t = AString;
                              ComboBox->Items->Assign (StringList.get ());
                              ComboBox->ItemIndex = 0;
                              }


                              Comment

                              Working...