Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > из Edit в переменую


Автор: illidan 22.11.2007, 00:31
Ребят подскажыте как переменой типа string(или char) присвоить текст из Edit , для дальнейшего его редактирования и вывода на TChart

Код

//---------------------------кнопка для вывода на chart------------------------------------------------



void __fastcall TForm1::Button2Click(TObject *Sender)
{
for (i=1;i<=strlen(strvuvod);i++)
        {
        Chart1->Series[0]->AddXY(i,strvuvod[i]);
        }
        Button2->Enabled = False;

}
//-------------------------присваивание edit в переменую--------------------------------------------------


void __fastcall TForm1::Edit1Change(TObject *Sender)
{
 strhelp=Edit1->Text ; // <------< вот здесьто и загвоздка ------------
}
//---------------------------------------------------------------------------



ps для ясности: мне нужно вывести на диаграму количество букв в строке

Автор: AntonX 22.11.2007, 00:45

Цитата

ps для ясности: мне нужно вывести на диаграму количество букв в строке


текст получаешь так:

    AnsiString str = Edit1->Text; 

    str.c_str(); // возвращает строку в С стиле
    str.Length() // Выдает количество символов в строке

а дальше юзай как хочешь. 

P.S. если не то объяснил, то напиши вопрос поподробнее

Автор: illidan 24.11.2007, 00:59
мда, так и знал что ансистринг подсунут, хорошо спрошу по другому: нужно убрать пробелы и подшитать количество повтроряемых букв и вывести на диаграму, тоесть напр. : а-1(шт) б-6(шт) в-9(шт) г-0(шт)

зы AntonX спсба за подсказку с помошью хелпа понял, что куда.
ззы барланд учю не пинайте ногами, работал на консольном smile 

Автор: illidan 24.11.2007, 03:12
кто ныть может показать с примерами smile , как редактировать (удаление и тп) в ansiString, ато в хелпе немного не понятно (


vjz задача решина )
Код

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString str = Edit1->Text.c_str();
if (!(Edit1->Text == ""))
        {
          Button2->Enabled = true;
        }
strhelp=str;
char *spase=" ";
char *null="";
 for (int i=1;i<=(Edit1->Text.Length());i++)
        {
        if  (strhelp[i] == *spase)
                {
                  strhelp[i]=*null;
                }
        }
 Edit2->Text=strhelp;
}


//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{

  for (int i=1;i<=(Edit1->Text.Length());i++)
        {
        Chart1->Series[0]->AddXY(i,strhelp[i]);
        }
        Button2->Enabled = false;
}
//---------------------------------------------------------------------------


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)