Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FAQ по Borland C++ Builder

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

Открыть новую тему     Написать ответ в эту тему

Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер уважаемые, ни у кого случаем нет примеров на компонентах indy для С++ Builder, а конкретно интересует IdTCPServer, IdTCPClient, IdUDPServer, IdUDPClient?

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 21:32 11-03-2009
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mifonix
Кинь мне в ПМ свой e-mail. Я пошлю тебе книгу на русском "Глубины Indy"(Indy in Depth).

Всего записей: 2730 | Зарегистр. 16-10-2003 | Отправлено: 08:26 12-03-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Garrett
 
Такая книга у меня есть! Интересует именно примеры написанные на С++, может кто больше продвинулся в этом освоении относительно примеров из книги  "Глубины Indy"(Indy in Depth) и непосредственно на Builder.

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 18:48 12-03-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Товарищи! А кто может подсказать, как в проекте сделать датамодуль основной формой? Как это сделано например в примере Барс6 в дэвэкспресс...

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 18:34 13-03-2009
crazyspoOky



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста, как в DirectoryListBox увидеть скрытые директории, (как например в FileListBox через filetype) ?  
Я пытался так DirectoryListBox1->FileList->FileType = FileListBox1->FileType; но не помогает.

Всего записей: 75 | Зарегистр. 29-09-2006 | Отправлено: 18:48 14-03-2009
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
crazyspoOky
Никак. Более того, я бы отказался от использования компонентов для Win3.1.  Их в любой момент могут отменить, да и вид у них нестандартный.
 
Ты должен использовать функцию SHBrowseForFolder, она показывает всё!

Всего записей: 2730 | Зарегистр. 16-10-2003 | Отправлено: 23:24 14-03-2009
Asm64D



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mifonix
Самая большая коллекция demos к INDY http://www.indyproject.org/Sockets/Demos/index.EN.aspx но как видите примеры только на Delphi, правда переписать CBulder не составляет труда.

Всего записей: 1312 | Зарегистр. 24-02-2008 | Отправлено: 00:37 15-03-2009
crazyspoOky



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, так я и поступил. Спасибо большое за ответ. Реализовал через библиотеку <shlobj.h>
 

Код:
 
void __fastcall TForm1::Button3Click(TObject *Sender)
{
   char Direct[MAX_PATH+1];
    BROWSEINFO dir;
    memcpy(Direct, "", 3);
    dir.hwndOwner = 0;
    dir.pidlRoot = NULL;
    dir.pszDisplayName = Direct;
    dir.lpszTitle = "Выбираем папку с нужными мне файлами";
    dir.ulFlags = BIF_USENEWUI |BIF_NONEWFOLDERBUTTON | BIF_STATUSTEXT | BIF_BROWSEFORCOMPUTER | BIF_EDITBOX | BIF_NEWDIALOGSTYLE;
    dir.lpfn = NULL;
    SHGetPathFromIDList(SHBrowseForFolder(&dir),Direct);
 
    FileListBox1->Directory=Direct;
        Label2->Caption=Direct;
 
}
 

А пермещение папки через Shellapi реализовал, но это уже другая история Спасибо

Всего записей: 75 | Зарегистр. 29-09-2006 | Отправлено: 00:38 15-03-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Asm64D

Спасибо!
 
Добрый вечер уважаемые!!! Подскажите кто работал с БД Interbase  и полями BLOB содержащими картинку или видео файл, как их взять оттуда и поместить на форму например в компонент Image или DBImage для реализации использовать только стандартные компоненты Interbase (FIBPLUS не предлагать), да и желательно реализовать не используя буфер обмена и промежуточного сохранения в файл, а напрямую на форму.

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 18:56 27-03-2009 | Исправлено: Mifonix, 20:17 10-04-2009
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mifonix
Примерно так, через TMemoryStream
Подробнее...

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 05:29 28-03-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShIvADeSt
 
Спасибо, буду пробовать!

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 11:17 29-03-2009
AddMen



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите
создаю обработку исключительной ситуации

Код:
 
try                                                              
    fp=fopen("data\\prog.dat", "r+");             (1)
except                                                       (2)  
   <обработка>                                          (3)
end;                                                          (4)
 

программа не выдает ошибки:
 
E2275 { expected                           для строки - 1
E2451 Undefined symbol 'except'     для строки - 2
E2379 Statement missing ;                 для строки - 3
E2451 Undefined symbol 'end'          для строки - 4
 
класс exception подключен в заголовочном файле
 
подскажите, что я делаю неправильно?????

Всего записей: 33 | Зарегистр. 17-11-2005 | Отправлено: 14:51 29-03-2009
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AddMen
__try {
...
}
catch (exception-declaration) {
...
}

Всего записей: 2730 | Зарегистр. 16-10-2003 | Отправлено: 15:03 29-03-2009
AddMen



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо

Всего записей: 33 | Зарегистр. 17-11-2005 | Отправлено: 15:04 29-03-2009
Vsevolod



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть непонятки, написал программу которая вызывает программу и потом её "убивает". Компилирую и всё работает на ура, как и хотелось. Иду в папку за exe-шником, чтобы его использовать и решаю ещё раз проверить. Программа запускается, а "убить" не хочет. Чего не так?
 
# CodeGear 2009 C++ Builder

Всего записей: 2364 | Зарегистр. 13-06-2001 | Отправлено: 00:32 01-04-2009 | Исправлено: Vsevolod, 00:33 01-04-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер кто подскажет, как на с++builder написать, что бы в ListBox можно было менять цвет текста в каждой строчке, например 1 строчка идет красным цветом а вторую мы выводим зеленым.
 
2. Возможно ли создавать на фрейме динамически объекты, т.е. создать форму, фрейм(на нем некоторые компоненты не изменяемые наложены) и прежде чем фрейм наложить на форму необходимо создать на фрейме дополнительные объекты динамически т.е. добавить от определенных условий те или иные компоненты. Это возможно, если да то как в С++Builder?

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 21:29 05-04-2009 | Исправлено: Mifonix, 21:40 05-04-2009
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mifonix
1. Установи Style в нужный тебе режим (lbOwnerDrawFixed, lbOwnerDrawVariable или  lbVirtualOwnerDraw), затем используй OnDrawItem.
2. В Дельфи/Билдере все объекты VCL можно создавать динамически. Читай справку.

Всего записей: 2730 | Зарегистр. 16-10-2003 | Отправлено: 08:13 06-04-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую вас. Помогите перегнать код из Delphi в C++Builder

Код:
 
 
procedure TfrmMain.WriteMessage(Msg: string);
var
  cList : TList;
  Count : Integer;
begin
  cList := Server.Contexts.LockList;
  try
    for Count := 0 to cList.Count -1 do
      begin
        with TIdContext(cList[Count]) do
          begin
            Connection.IOHandler.WriteBuffer(Msg[1], Length(Msg));
          end;
      end;
  finally
    Server.Contexts.UnlockList;
  end;
end;
 
 

 
По большей части интересует вот эта конструкция:

Код:
 
with TIdContext(cList[Count]) do  
   begin  
       Connection.IOHandler.WriteBuffer(Msg[1], Length(Msg));  
   end;

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 20:19 10-04-2009 | Исправлено: Mifonix, 20:21 10-04-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mifonix
По идее так:

Код:
 
void __fastcall TfrmMain::WriteMessage(String Msg)
{
  TList* cList;
  int Count;
 
  cList = Server->Contexts->LockList;
   
  try {
    for (Count = 0; Count < cList.Count; Count++)  
            TIdContext(cList[Count])->Connection->IOHandler->WriteBuffer(Msg[1], Length(Msg));
  }
  __finally
    Server->Contexts->UnlockList;
}
 

 
но вполне возможно вот тут:

Код:
 
TIdContext(cList[Count])->Connection->IOHandler->WriteBuffer(Msg[1], Length(Msg));
 

нужно будет сделать так:

Код:
 
TIdContext *clProm = dynamic_cast<TIdContext *>(cList[Count]);
if (clProm != NULL) clProm->Connection->IOHandler->WriteBuffer(Msg[1], Length(Msg));
 

 
Добавлено:
ГОСПОДА!!! А У МЕНЯ ВОПРОС НЕ ОТНОСЯЩИЙСЯ К ДАННОМУ:  тут

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 21:06 10-04-2009 | Исправлено: Meister Floh, 22:19 10-04-2009
Mifonix

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Meister Floh
 
Увы! Не работает!
 

Код:
 
  TList *cList = new TList ;
 
  cList = IdTCPServer1->Contexts->LockList();
 
  try
    {
        for ( int i = 0; i < cList->Count; i++)
        {
            TIdContext *clProm = dynamic_cast<TIdContext *>(cList[i]);
            if (clProm != NULL)
            clProm->Connection->IOHandler->WriteLn("Welcom");
            //TIdContext(cList[i])->Connection->IOHandler->WriteLn("Welcom");
        }
    }
  __finally
    {
        IdTCPServer1->Contexts->UnlockList();
    }
 

 
E2031 Cannot cast from 'TList' to 'TIdContext *'
 

Код:
TIdContext(cList[i])->Connection->IOHandler->WriteLn("Welcom");

 
 
E2285 Could not find a match for 'TIdContext::TIdContext(TList)'
E2459 VCL style classes must be constructed using operator new
 
 

Всего записей: 84 | Зарегистр. 24-12-2006 | Отправлено: 21:20 11-04-2009 | Исправлено: Mifonix, 22:18 11-04-2009
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FAQ по Borland C++ Builder


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru