Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» FAQ по Borland C++ Builder

Автор: IgorXI
Дата сообщения: 25.10.2006 12:02
Подскажите, как можно динамически создать форму с передачей параметров, зная только имя класса в виде текствой строки
Например без параметров можно
Application->CreateForm(__classid(GetClass("ClassName")), &f),
а вот с параметрами не пойму, как?
Автор: Jokerjar
Дата сообщения: 25.10.2006 13:39
JohnC, thanks.

А вот еще такой вопрос: Как убрать border и popup у CppWebBrowser???
Автор: royt
Дата сообщения: 01.11.2006 07:41

Цитата:
Подскажите, как можно динамически создать форму с передачей параметров, зная только имя класса в виде текствой строки
Например без параметров можно Application->CreateForm(__classid(GetClass("ClassName")), &f),

Штатными (уже имеющимися) средствами - никак. Передать параметры именно при создании можно только в конструкторе класса, а CreateForm() вызывает только "обычный" конструктор для TForm. Если для формы реализовать конструктор с необходимыми параметрами, то его вызов придется уже реализовывать каким-то образом самому (указывая нужные параметры) - например в своей реализации функции типа CreateForm().
Автор: 7Gluk7
Дата сообщения: 09.11.2006 14:59
Народ помогите, пожалуйста, с blob полями.
Читаю данные через поток без проблем, а запись не срабатывает. То есть, при записи ошибок не выдает, но поле оказывается пустым.
Я работаю в bcb6 с базой mysql. Пробовал компоненты mydac и zeosdbo, везде таже проблема. Что я не правильно делаю?
Автор: CBB
Дата сообщения: 12.11.2006 16:00

Цитата:
2006 вообще расширения .bpr не понимает

EmeJIbka
Цитата:
Только что открыл проект от 6 билдера в 2006 - всё работет без проблем

Оказалось - перед установкой BDS2006 надо обязательно временно сносить .Net 2.0 , иначе именно Билдер как раз встает криво. Теперь все заработало после переустановки.
Автор: Grunge
Дата сообщения: 12.11.2006 18:10
Здравствуйте! Никак не получается организовать запись в файл. Всё получается, если использовать потоки, а вот с помощью функций FileOpen(), FileWrite() в файл записываются бинарный код. Подскажите, пожалуйста, в чём проблема. Спасибо!

Код:
int m;
int iFileHandle;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
m=StrToInt(Edit1->Text);
iFileHandle = FileOpen("file.text", fmOpenWrite);
FileWrite(iFileHandle, &m, 4);
FileClose(iFileHandle);
}
Автор: ShIvADeSt
Дата сообщения: 13.11.2006 01:31
F1:=OpenFile(FilePath,OfStr,OF_READWRITE);
if F1=HFILE_ERROR then .. ошибка (обработка)
SetFilePointer(F1,PatchPos,nil,FILE_BEGIN);
WriteFile(F1,Bt,1,Bytes,nil);
_lclose(F1);
хоть и на дельфи, но функции теже.
Автор: Jokerjar
Дата сообщения: 13.11.2006 01:46
Grunge, мож так получится:

Код: DWORD count;
HANDLE hFile;

hFile = CreateFile(FilePath.c_str(),GENERIC_READ|GENERIC_WRITE,0,NULL,CREATE_NEW,0,NULL);
WriteFile(hFile,&Data,sizeof(Data),&count,NULL);
CloseHandle(hFile);
Автор: Grunge
Дата сообщения: 13.11.2006 13:04
Jokerjar,
я так понимаю, ошибка вот здесь

Код:
FileWrite(iFileHandle, &m, 4);
Автор: zazik
Дата сообщения: 13.11.2006 14:41
ВСЕМ ПРИВЕТ ! Почему мои проги на билдере 6 у меня работают а на других машинах требует библиотеку!
Автор: CBB
Дата сообщения: 13.11.2006 17:24
zazik
Project->Options->Packages - убрать галочку "Build with runtime packages"
Project->Options->Linker - убрать галочку "Use dynamic RTL"
Поставить галочку "Default" (в самом низу)
OK
Автор: zazik
Дата сообщения: 13.11.2006 18:28
спасибо бальшое !
Автор: zazik
Дата сообщения: 14.11.2006 06:53
всем привет ! народ подскажи есть ли хелп на русском языке для Borland C++ Builder 6 ? если есть то де его взять ?
Автор: monsoon
Дата сообщения: 14.11.2006 15:25
RichEdit при сохранении в rtf-файл (RichEdit1->Lines->SaveToFile) дописывает туда мусор.
Особенно это заметно, если в rtf использовались маркированные списки.
При каждом следующем сохранении файла добавляется еще один маркер!
Если воспользоваться примером редактора:
C:\PROGRAM FILES\BORLAND\CBUILDER6\EXAMPLES\APPS\RICHEDIT\richedit.bpr
происходит тоже самое.
Есть ли решение без использования других компонент?
Автор: royt
Дата сообщения: 20.11.2006 13:34
monsoon
Цитата:
Есть ли решение без использования других компонент?
Скорее всего, борландовский TRichEdit использует штатную реализацию вывода в поток RichText, и посему изменить поведение вряд ли получится (как минимум, придется править исходники компонент или патчить результирующий файл уже после выполнения записи).

Я бы порыл в следующем направлении:
1) выяснить, не изменилось ли что-то в положительную сторону в RichText более старших версий (--> см. MSDN), и если так - попробовать задействовать реализацию более нового RichText (но для этого надо повлиять на процесс создания RichEdit, т.е. все равно придется рыться в исходниках кмопонент или искать другие)
2) искать сторонние реализации RichEdit, совсем не эксплуатирующие штатный виндовозный (ну или хотя бы по-своему реализующие чтение/запись), хотя я бы постарался воздержаться от этого пути.
Автор: RedShadow
Дата сообщения: 06.12.2006 22:15
Такой ламерский вопрос:
1. Нужно из ListBox1 передать выделенные строчки в ListBox2
2. Нужно из ListBox1 передать ВСЕ строчки в ListBox2
Как это сделать Builder C++?
Спасибо
Автор: 6epcepk
Дата сообщения: 09.12.2006 18:28
А кто-нибудь создавал чтобы выводились изображения в программе? Как например в папке.
Вот какой мой код:

Код:
TListItem *ListItem;

TJPEGImage *pI=new TJPEGImage();
pI->LoadFromFile("C:\\image.jpg");

Graphics::TBitmap *pB=new Graphics::TBitmap();
pB->Assign(pI);
delete pI;
ImageList1->AddMasked(pB, NULL);
delete pB;


Graphics::TBitmap *B = new Graphics::TBitmap();
ImageList1->GetBitmap(0, B);


ListView1->LargeImages = ImageList1;
ListView1->SmallImages = ImageList1;

ListItem = ListView1->Items->Add();
ListItem->ImageIndex = 1;
ListItem->Caption = "image";
Автор: aurally
Дата сообщения: 13.12.2006 13:35
Поскажите pls, как можно заставить DBGrid поддерживать темы XP?
Спасибо
Автор: vidic777
Дата сообщения: 09.01.2007 01:51
aurally
Оди из вариантов - это поставить TMS Compoenent Pack. А есть еще такой топ http://forum.ru-board.com/topic.cgi?forum=33&bm=1&topic=6607&start=1420#lt поспрошайте здесь.
Автор: bandyn
Дата сообщения: 13.01.2007 13:41
Функция PlaySound;
Имеется программа проигрывающая подряд звуки функцией:
PlaySound(EdWave->Text.c_str(),NULL,SND_FILENAME+SND_NOSTOP);
маленькие wav-файлы проигрываются до конца, а вот длинные wav-файлы прерываются, т.е. до конца не проигрываются.

Кто-нибудь сталкивался с такой проблемой?
Как ее решить?

WinXP SP2, 768 RAM, BCB 6 Update 4

P.S.:
PlaySound(EdWave->Text.c_str(),0,SND_SYNC); - тот же эффект
sndPlaySound(EdWave->Text.c_str(), 0); - тот же эффект
PlaySound(EdWave->Text.c_str(),0,SND_ASYNC); - проигрывает до конца, но не подходит т.к. нужно ждать завершнения воспроизведения звука.
Автор: larin58
Дата сообщения: 17.01.2007 01:15
Подскажите пожалуйста как сбросить (обнулить) NTFS права для файла (директории)??
Автор: royt
Дата сообщения: 22.01.2007 15:18
larin58
В RTL и VCL по-моему нету спец. функций для установки прав (ну кроме аналогов unix-овых, типа chmod).
Так что это вопрос не по C++Builder, а в топик типа "Windows API".
Автор: spike
Дата сообщения: 24.01.2007 14:34
1 - Можно как-нибудь прикрутить к CBuilder 6 и к BDS2006 SourceSafe от Microsoft ?
2 - как с помощью API послать текст в COM-порт
3 - Как в CppWebBrowser послать на печать страницу, там можно правой кнопкой мыши выбрать "Принт", но надо обычным button-ом, а то пользователи не смогут распечатать
Автор: dyr farot
Дата сообщения: 24.01.2007 19:11
1 -- можно
2 -- банальным WriteFile
3 -- банальным ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,

P.S.
все эти вопросы столько раз поднимались что просто нет слов...
Автор: spike
Дата сообщения: 25.01.2007 09:10
dyr farot
так как прикрутить SourceSafe ?
с остальным разобрался, сенькс
Автор: Garrett
Дата сообщения: 25.01.2007 09:13
spike
http://www.epocalipse.com/vcx.htm
Автор: royt
Дата сообщения: 26.01.2007 13:03
Кто-нибудь переходил уже с C++Builder на BDS2006?
Как оно - есть проблемы при перекомпиляции компонентов и проектов, и какого рода? Или поддержка снизу вверх - 100%?
Автор: dyr farot
Дата сообщения: 26.01.2007 13:43
есть небольшие, но легко решаемые проблемы. но в целом -- переход довольно безболезненный
Автор: vidic777
Дата сообщения: 27.01.2007 22:50
royt
dyr farot прав - проблемы решаемые. Да и эргономика всего IDE стала лучше. В общем Borland на месте не стоит, тока нада при установке BDS2006 поставить 2 апдейта и 9 хотфиксов.
Автор: royt
Дата сообщения: 29.01.2007 19:53
Можно поконкретнее вопросы задам...
Поскольку проектов немало и хотелось бы знать, чего ожидать.

Существующие проекты открываются и компилируются совсем без необходимости внесения поправок?
Или все же приходится апдейтить исходники?

То же самое применительно к библиотекам компонент (это даже более актуально ).
Существующие библиотеки (если есть исходники) компилируются без вопросов?
Если были затыки - то какого рода?
Если, например, возьмем JVCL 3.20 - то там самостоятельно можно очень долго исходники править...

Страницы: 12345678910111213141516171819202122232425262728

Предыдущая тема: ms exchange


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.