(Часть 2) Я начинающий, подскажите пожалуйста как...
Прежде чем задать вопрос здесь, вы обязаны использовать
- Поиск по форуму, используя ключевые слова из вашего вопроса. Как правильно использовать поиск - читайте здесь
- Список наиболее часто задаваемых вопросов (FAQ)
- Поиск по предыдущей теме
Кроме того, прежде чем размещать сообщение, ознакомьтесь с правилами.
При размещении вопросов начинающих помимо указанной темы, будет выдаваться нарушение, а тема удаляться.
У меня беда похуже
У меня беда похуже
Блиа, эо форум тролей,или тематический форум? :/
Блиа, эо форум тролей,или тематический форум? :/
Кто бы говорил...
Я любезно задаю вопросы,и за отвты на них благодарю, если вам этого мало,что ж,я готов оплачивать консультации при личной встрече,вполне серьезно.Если нет,то к чему вы сейчас называете меня троллем? Человек не то что,не ответил на вопрос,так еще и какую то фигню, написал в ответ.Я же никак не могу определить нормально размер этого листа с записями.Перечитал 2 раза раздел с массивами в книге Архангельского, там дано 2 способа.
sizeof(array) / sizeof(array[index]);
Ни с тем,ни с другим работать не получается.Вот я и спрашиваю совета у знающих людей,а не галантных молодых людей прошу проходить мимо.
Вопрос очень простой :)
TStringList. Считываю им файл.Как бы мне теперь узнать кол-во строчек? Ну или вообще,как узнать колво строчер,для связки:
Что то вроде ф-ции count() в пхп.Может быть сть предопределенный метод?
ты все же читай справку иногда...
и завязывай фигню спрашивать...
{
Application->MessageBox(ex->Message, "Warning!", MB_OK | MB_ICONWARNING);
}
Не работает.Ну ествественно перед этим блоком,идет блок try{}.Ошибка при компиляции:
[C++ Error] Unit1.cpp(49): E2342 Type mismatch in parameter 'Text' (wanted 'const char *', got 'AnsiString')
Сконвертируйте вашу строку ("Warning!") в заданный тип.Вернее,задайте константу,как-то так вроде
{
Application->MessageBox(ex->Message, "Warning!", MB_OK | MB_ICONWARNING);
}
Не работает.Ну ествественно перед этим блоком,идет блок try{}.Ошибка при компиляции:
[C++ Error] Unit1.cpp(49): E2342 Type mismatch in parameter 'Text' (wanted 'const char *', got 'AnsiString')
Возмите другую книгу. Выбирайте именно для тупых пез... вам однозначно поможет, вне зависимости от наличия между ногами предмета. Ибо намекает.
Ололо,спасибо КЕП.
Да,знаю что заябую, но чтож поделать? если в книге нет примера по реализаци ичего либо,прихоиться тыкаться в гугел,а раз гугел молчит иду сюда.
А про тупую п*зду,да,впечатляет.
Это было грубо...
Да,знаю что заябую, но чтож поделать? если в книге нет примера по реализаци ичего либо,прихоиться тыкаться в гугел,а раз гугел молчит иду сюда.
А про тупую п*зду,да,впечатляет.
ну так и если гугел не помагает - то одназначно - для их родимых. Потому как и на нашем форуме есть ответы на данные вопросы. Причем не однократно. У класса AnsiString это метод c_str()
да. однозначно. Сознательно и целенаправленно. А што? Мне наравится.... в конце концов, мне нравятся тупые песды - ибо тут профит! иногда. :) шутка.
да. однозначно. Сознательно и целенаправленно. А што? Мне наравится.... в конце концов, мне нравятся тупые песды - ибо тут профит! иногда. :) шутка.
До я не обижаюсь,сам иногда бывает чувствую себя троллем.Сознаюсь :)
Грубый ответ - лучше молчания,я так считаю.
Спасибо за ответ кстати,запоздалый,но все же ответ.
Теперь хотел бы спросить,что можно почитать про такую штуку(и есть ли такое вообще), дизайн в C++ Builder.Хм,даже не знаю как объяснить,но думаю что программными методами,такого можно добиться.
Как пример - показ формы,но без окантовки вообще,то есть, того места где у нас [_][-][X].Вообще вез обрисовки.Или например круглые кнопки,про картинки почитал уже,потренировался.А как например сделать кнопку такого же вида,как и в теме установленной на пк,а не эти дефолтные кнопочке? Интерисуют статьи,обзоры,книги,и прочее,где можно почитать об этом.
И еще один мего вопрос. У каждого Яп наверно есть свой сайт с манами, обяснениями ф-ций,и прочим.Например у php => php.net.Так вот,есть ли такой сайт у ЦппБилдера? Можно даже не сайт,а офф версию,например в виде справки *.chm.Конечно желательно на русском языке,но я вполне прочитаю и на иврите.Спасибо,думаю в этот раз вопрос поставлен ниипически корректно,и тупой пелоткой меня не обзовут ^_^
/* И пока ходил за чаем вспомнил.ООП.Юзаю я его,понима методы\классы\объекты, но вот если честно самого преимущества не понимаю.Возможно есть литературка.которая на пальцах объяснит чем его преминение так кошерно? Глупо,но все же лучше сразу сознаться,иначе думаю потом проблем будет больше.*/
Грубый ответ - лучше молчания,я так считаю.
Спасибо за ответ кстати,запоздалый,но все же ответ.
Теперь хотел бы спросить,что можно почитать про такую штуку(и есть ли такое вообще), дизайн в C++ Builder.Хм,даже не знаю как объяснить,но думаю что программными методами,такого можно добиться.
Как пример - показ формы,но без окантовки вообще,то есть, того места где у нас [_][-][X].Вообще вез обрисовки.Или например круглые кнопки,про картинки почитал уже,потренировался.А как например сделать кнопку такого же вида,как и в теме установленной на пк,а не эти дефолтные кнопочке? Интерисуют статьи,обзоры,книги,и прочее,где можно почитать об этом.
И еще один мего вопрос. У каждого Яп наверно есть свой сайт с манами, обяснениями ф-ций,и прочим.Например у php => php.net.Так вот,есть ли такой сайт у ЦппБилдера? Можно даже не сайт,а офф версию,например в виде справки *.chm.Конечно желательно на русском языке,но я вполне прочитаю и на иврите.Спасибо,думаю в этот раз вопрос поставлен ниипически корректно,и тупой пелоткой меня не обзовут ^_^
/* И пока ходил за чаем вспомнил.ООП.Юзаю я его,понима методы\классы\объекты, но вот если честно самого преимущества не понимаю.Возможно есть литературка.которая на пальцах объяснит чем его преминение так кошерно? Глупо,но все же лучше сразу сознаться,иначе думаю потом проблем будет больше.*/
для билдера есть/был достаточно большое сообщество. И даже если здесь задавать вопросы - то можно внятные ответы получить.
Для окна - это стиль BorderSyle, тип bsToolWindows
Для окна - это стиль BorderSyle, тип bsToolWindows
Экстрасенс напряг моск,но не смог получить адреса этого самого сообщества :)
Загуглил - что то неахти,везде тупиковые ссылки :(
открывался, например, файл справки - file.chm по пути - c:\\windows\help\.
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
[color=red]что здесь нада писать??[/color]
}
//---------------------------------------------------------------------------
При компиляции проэкта пише:
Помоему все файлы лежат на месте.Я уже хз что делать,нужны регулярки,но никак не могу настроить :(
Такого файла действительно нет,есть libboost_wserialization-vc90-mt-s-1_42.lib Возможно не для той версии? Или что это может быть?
Возможно проблема в этом:
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.
C:\Users\m0hze>Cd ../../
C:\>cd boost11
C:\boost11>bjam "-sTOOLS=borland" install
WARNING: No python installation configured and autoconfiguration
failed. See http://www.boost.org/libs/python/doc/building.html
for configuration instructions or pass --without-python to
suppress this message and silently skip all Boost.Python targets
warning: No toolsets are configured.
warning: Configuring default toolset "msvc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
warning: Building Boost.Regex with the optional Unicode/ICU support disabled.
note: Please refer to the Boost.Regex documentation for more information
note: this is a strictly optional feature.
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
Skipping build of: libs/python/build/boost_python <build>no in common properti
es
^C
C:\boost11>
При установке пишет вот такую ерунду.
ОС - Windows 7
Собирал во по этому факу:
http://forum.codenet.ru/showpost.php?p=123042&postcount=3
Ребята,мозг сломал.Никак не хочет работать!
открывался, например, файл справки - file.chm по пути - c:\\windows\help\.
функция HtmlHelp
не забываем пользоваться Поиском
Теперь вот вопрос.
AnsiString str("<div>Hello world!</div>");
cmatch what;
if(regex_search(str.c_str(), what, expression)){
ShowMessage(what[1].first);
}
Почему в результате присутствует </div>? Этого там быть просто не должно.Либо я вывожу не ту ччасть массива? Большое спасибо.
{
using namespace std;
using namespace boost;
TIdHTTP *http = new TIdHTTP(NULL);
regex expression("<td align=\"center\"><i>(.+?)<\\/i><\\/td>");
AnsiString str = http->Get("http://site.net/browse.php?search=Ñêðèïò&incldead=0&cat=0");
cmatch what;
string name;
if(regex_match(str.c_str(), what, expression)){
name.assign(what[1].first, what[1].second);
ShowMessage(name.c_str());
}
}
Но если в php есть preg_match_all(); которая сгребает ВСЕ вхождения,то тут такого нет :(
Прочитал http://habrahabr.ru/blogs/cpp/64226/ того что искал там не нашел.Внимание вопрос господа,как вывести на экран,пускай в Memo, все вхождения?
{
using namespace std;
using namespace boost;
TIdHTTP *http = new TIdHTTP(NULL);
regex expression("<td align=\"center\"><i>(.+?)<\\/i><\\/td>");
AnsiString str = http->Get("http://site.net/browse.php?search=Ñêðèïò&incldead=0&cat=0");
cmatch what;
string name;
if(regex_match(str.c_str(), what, expression)){
name.assign(what[1].first, what[1].second);
ShowMessage(name.c_str());
}
}
Но если в php есть preg_match_all(); которая сгребает ВСЕ вхождения,то тут такого нет :(
Прочитал http://habrahabr.ru/blogs/cpp/64226/ того что искал там не нашел.Внимание вопрос господа,как вывести на экран,пускай в Memo, все вхождения?
Блин,парни, действительно не могу разобраться с этой регуляркой.Пытался заюзать regex_match, но он вообще не находит ничего.А мне нужно поймать все вхождения.Мануалы не помогли :(
Начал учить программирование по книге "Занимательно программирование С++" С.Симоновичь,Г.Евсеев.
Делаю всё по книге.Прога С++ Build 2007.В конце программирования у меня незагораеться кнопка Run.может я что то не доделал.
Или это нереально, так как Image создаётся внутри функции и после её выполнения к нему уже не обратиться?
void TForm1::newTabImage(String titl,int index){
TTabSheet *TabSheet = new TTabSheet(PageControl1);
TabSheet->PageControl = PageControl1;
TabSheet->Caption = titl;
PageControl1->ActivePageIndex=index;
TImage *Img=new TImage(PageControl1);
Img->Align=alCustom;
Img->Parent=PageControl1->Pages[index];
Img->Align=alClient;
Img->Canvas->MoveTo(100,100);
Img->Canvas->LineTo(200,200);
this->index++;
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TImage *Img=new TImage(this);
Img->Parent= this;
Img->Align=alClient;
ptr =Img;
}
//-------------------------------------------------------
//-------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
ptr->Canvas->MoveTo(100,100);
ptr->Canvas->LineTo(200,200);
}
нарисовать график поверхности. TChart что-то не очень подходит.
Думаю, что нужно копать в сторону OpenGL или
использовать Matlab совместно с C++. Может кто делал
что-нибудь подобное, please, помогите с примерчиком.
спасибо большое! :)
DataModule2->IBQuery1->Active=false;
DataModule2->IBQuery1->SQL->Clear();
DataModule2->IBQuery1->SQL->Text = "SELECT FIRST 1 * FROM RF ORDER BY RAND()";
DataModule2->IBQuery1->Open();
DataModule2->IBQuery1->Active=
true;
DataModule2->IBQuery1->Active=false;
DataModule2->IBQuery1->SQL->Clear();
DataModule2->IBQuery1->SQL->Text = "SELECT FIRST 1 * FROM RF ORDER BY RAND()";
DataModule2->IBQuery1->Open();
DataModule2->IBQuery1->Active=true;
Вот это почему то не помогает:
Img->Canvas->Font->Style << fsBold;
Решить с помощью динамических массивов.(С++) В тексте найти все слова, в которых буквы упорядочены в порядке, обратном алфавитному.(zona, tok)
И решить эту же задачу с помощью классов, строк, стандартных функций и динамических массивов.
{
case 1 : if (S.SubString(13,1) == 0)
{
ShapeA0->Brush->Color = clWhite;
ShapeA1->Brush->Color = clTeal;
ShapeA2->Brush->Color = clTeal;
ShapeA3->Brush->Color = clTeal;
ShapeA4->Brush->Color = clTeal;
ShapeA5->Brush->Color = clTeal;
ShapeA6->Brush->Color = clTeal;
ShapeA7->Brush->Color = clWhite;
};
if (S.SubString(13,1) == 1)
{
ShapeA0->Brush->Color = clWhite;
ShapeA1->Brush->Color = clWhite;
ShapeA2->Brush->Color = clWhite;
ShapeA3->Brush->Color = clWhite;
ShapeA4->Brush->Color = clTeal;
ShapeA5->Brush->Color = clTeal;
ShapeA6->Brush->Color = clWhite;
ShapeA7->Brush->Color = clWhite;
}; и т.д.
switch (NS)
{
case 1 : if (S.SubString(13,1) == 0)
{
ShapeB0->Brush->Color = clWhite;
ShapeB1->Brush->Color = clTeal;
ShapeB2->Brush->Color = clTeal;
ShapeB3->Brush->Color = clTeal;
ShapeB4->Brush->Color = clTeal;
ShapeB5->Brush->Color = clTeal;
ShapeB6->Brush->Color = clTeal;
ShapeB7->Brush->Color = clWhite;
};
if (S.SubString(13,1) == 1)
{
ShapeB0->Brush->Color = clWhite;
ShapeB1->Brush->Color = clWhite;
ShapeB2->Brush->Color = clWhite;
ShapeB3->Brush->Color = clWhite;
ShapeB4->Brush->Color = clTeal;
ShapeB5->Brush->Color = clTeal;
ShapeB6->Brush->Color = clWhite;
ShapeB7->Brush->Color = clWhite;
}; и т.д.
Как сделать что-то вроде этого:
Shape0->Brush->Color = clWhite;
Shape1->Brush->Color = clTeal;
Shape2->Brush->Color = clTeal;
Shape3->Brush->Color = clTeal;
Shape4->Brush->Color = clTeal;
Shape5->Brush->Color = clTeal;
Shape6->Brush->Color = clTeal;
Shape7->Brush->Color = clWhite;
но достаточно
{
case 1 : if (S.SubString(13,1) == 0)
{
ShapeA0->Brush->Color = clWhite;
ShapeA1->Brush->Color = clTeal;
ShapeA2->Brush->Color = clTeal;
ShapeA3->Brush->Color = clTeal;
ShapeA4->Brush->Color = clTeal;
ShapeA5->Brush->Color = clTeal;
ShapeA6->Brush->Color = clTeal;
ShapeA7->Brush->Color = clWhite;
};
if (S.SubString(13,1) == 1)
{
ShapeA0->Brush->Color = clWhite;
ShapeA1->Brush->Color = clWhite;
ShapeA2->Brush->Color = clWhite;
ShapeA3->Brush->Color = clWhite;
ShapeA4->Brush->Color = clTeal;
ShapeA5->Brush->Color = clTeal;
ShapeA6->Brush->Color = clWhite;
ShapeA7->Brush->Color = clWhite;
}; и т.д.
int i = 'A';
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"1"));
if (shp) shp->Brush->Color = clWhite;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"2"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"3"));
if (shp) shp->Brush->Color = clWhite;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"4"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"5"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"6"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"7"));
if (shp) shp->Brush->Color = clTeal;
а лучше завести для указателей нормальный контейнер нужной размерности
int i = 'A';
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"1"));
if (shp) shp->Brush->Color = clWhite;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"2"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"3"));
if (shp) shp->Brush->Color = clWhite;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"4"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"5"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"6"));
if (shp) shp->Brush->Color = clTeal;
shp = dynamic_cast<TShape *>(FindComponent("Shape"+String((char)i)+"7"));
if (shp) shp->Brush->Color = clTeal;
а лучше завести для указателей нормальный контейнер нужной размерности
как я понял тут shape создаются динамически, а как их обьединить если они уже существуют?
{
__published: // IDE-managed Components
TShape *ShapeA0;
TShape *ShapeA1;
TShape *ShapeA2;
TShape *ShapeA3;
TShape *ShapeA4;
TShape *ShapeA5;
TShape *ShapeA6;
TShape *ShapeA7;
TShape *ShapeB0;
TShape *ShapeB1;
TShape *ShapeB2;
TShape *ShapeB3;
TShape *ShapeB4;
TShape *ShapeB5;
TShape *ShapeB6;
TShape *ShapeB7;
TShape *ShapeC0;
TShape *ShapeC1;
TShape *ShapeC2;
TShape *ShapeC3;
TShape *ShapeC4;
TShape *ShapeC5;
TShape *ShapeC6;
TShape *ShapeC7;
TShape *ShapeD0;
TShape *ShapeD1;
TShape *ShapeD2;
TShape *ShapeD3;
TShape *ShapeD4;
TShape *ShapeD5;
TShape *ShapeD6;
TShape *ShapeD7;
TShape *ShapeE0;
TShape *ShapeE1;
TShape *ShapeE2;
TShape *ShapeE3;
TShape *ShapeE4;
TShape *ShapeE5;
TShape *ShapeE6;
TShape *ShapeE7;
и т.д.
я из shap'ов сделал восьмисегментные индикаторы, а их 5 штук, вот и появилась необходимость их как-то обьединить чтобы было проще к ним обращаться.
нет, не динамически. FindComponent ищет уже существующие компоненты по их имени
кстати, велосипед уже изобрели
кстати, велосипед уже изобрели
Спасибо.
Нашёл пример вот такой http://www.codenet.ru/progr/delphi/quest022.php но но Делфи.
Заранее благодарен.