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

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

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

ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

   

vshersh



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitus_Bering
IMHO средствами делфи можно только картинки, иконки и курсоры добавить. Если надо бинарные данные без сторонних продуктов не обойтись
(Я говорю о Delphi 7 и ниже)

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 19:37 24-02-2006
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vshersh
Решение нашлось:
AppControls by UtilMind там есть компонент FileStorage это то, что нужно.  
В .ехе сохраняет любые файлы, работать с ними можно, не распаковывая их.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 20:39 24-02-2006
mainstream



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет.
Хочу забомбить компонент, который можно будет в рантайме таскать и ресайзить мышой.
Например как в дельфях, беру, скажем, Panel, ставлю её на форму и могу её таскать.
Т.е. как мне сделать чтобы при наведении мыши менялся курсор, и как рисовать рамку которая показывает будующие размеры контрола(кто её вообще рисует, сам контрол?). Мне пришло в голову только смотреть WM_MOUSEMOVE и по координатам отслеживать когда менять курсор, и таким же образом в паинте рисовать рамку. Может есть более грамотный способ, как вообще это делают?
 
Заранее спасибо.

Всего записей: 66 | Зарегистр. 10-04-2003 | Отправлено: 11:53 25-02-2006
gpi

Alone Wanderer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mainstream
Код:
procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
     ReleaseCapture;
     if Button=mbRight then
       TWinControl(Sender).Perform(WM_SYSCOMMAND, SC_SIZE+8,0)
     else
       TWinControl(Sender).Perform(WM_SYSCOMMAND, SC_MOVE+2,0);
end;

Меняя число n в SC_SIZE+n можно добиться разного изменения размеров

Всего записей: 432 | Зарегистр. 30-05-2004 | Отправлено: 13:43 25-02-2006
mainstream



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

Всего записей: 66 | Зарегистр. 10-04-2003 | Отправлено: 14:50 25-02-2006 | Исправлено: mainstream, 17:09 25-02-2006
vshersh



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mainstream
Глянь еще здесь
Там есть демо-проект

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 14:56 25-02-2006
mainstream



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vshersh, заценил проджект, там та же идея, но за ответ спасибо.

Всего записей: 66 | Зарегистр. 10-04-2003 | Отправлено: 17:08 25-02-2006
Schatz



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vshersh
 
Мне необходимо сделать следующее:
Есть TCP сервер(обычное вин приложение), который следит за COM портом и при получении данных передает их всем подключившимся клиентам.
Клиенты - ActivX компанента с TCP слиентом, котоя цепляется к серверу, получает с него данные переданные в ком порт, и отдает их приложению.
Сервер я подготовил, точнее он уже почти в готовом виде был в демках Indy.
А вот с клиентом не могу разобраться.
На клиенте нужно всего лишь три события сделать
1) onDataRead - при получении данных от сервера.
2) onConnect - при соединении с сервером
3) onDisconnect - при потери связи
и один метод SetServerName - установить имя/IP сервера к которому нужно прицепиться
 

Цитата:
Не понятно, кто такие у тебя FEvents  

При создании Active Form в делфе, она прописывает сразу кучу методов и событий связанных с формой, в событиях идет проверка
if FEvents <> nil then FEvents.Событие();

Всего записей: 55 | Зарегистр. 31-05-2005 | Отправлено: 08:22 26-02-2006
Apleks

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хочу разобрать, переделать и скомпилировать код, который, как мне сказали, точно компилируется под Делфи 4. У себя установил Делфи 8 (Architect Edition).
в папке такие файлы:
ic16.ico ic32.ico  
IP.~dp IP.~ds IP.bpg IP.cfg IP.dof IP.dpr IP.dsk IP.RC IP.res
P.~dp P.cfg P.dof P.dpr P.res
После компиляции должно получится два файла: IP.exe и P.dll
 
Подскажите в двух словах как это скомпилировать! Типа надо проект создать, какие-то файлы подключить....

Всего записей: 8 | Зарегистр. 24-04-2005 | Отправлено: 11:13 26-02-2006
sunduk4

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Apleks
Открываешь IP.dpr, компилируешь, открываешь P.dpr, компилируешь.

Всего записей: 177 | Зарегистр. 03-04-2004 | Отправлено: 11:44 26-02-2006
RomanTim

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Apleks
Только учти, что Д8 компилит только под .НЕТ

Всего записей: 375 | Зарегистр. 11-09-2003 | Отправлено: 13:54 26-02-2006
Apleks

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А D2006 под win32 умеет?
Что надёжнее и проще/быстрее для небольшой проги D7 или D2006 ?

Всего записей: 8 | Зарегистр. 24-04-2005 | Отправлено: 15:52 26-02-2006 | Исправлено: Apleks, 15:55 26-02-2006
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Apleks
Конечно D7, ИМХО.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 16:17 26-02-2006
Pinocchio

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Кто нибудь встречался с ошибкой отправки по IdSМТР? Дело в том что ситуацию воспроизвести на своём компе немогу, а сиё факт, что бывает такое - переключая с фастнет на инди получается ошибка отправки. Кабы знать в чём экзепшен? Может список получателей не через запятую, а через точку с запятой надо. А может новелл надо ставить чтобы ошибку отловить. Заранее спасибо за любые соображения, можно в ПМ.

Всего записей: 683 | Зарегистр. 18-11-2002 | Отправлено: 16:54 26-02-2006
vshersh



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Schatz
Насколько я понял тебя устроит такое-же приложение как в демке IdTCPDemo, только с ActiveX-клиентом?
Если да, то завтра смогу выслать работающий пример для активной формы.
 

Цитата:
На клиенте нужно всего лишь три события сделать

А не сгодятся события от самого компонента TIdTCPClient:
OnConnected
OnDisconnected
и OnWork ?
 
 

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 17:08 26-02-2006
SergeBS



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

Цитата:
 
IMHO средствами делфи можно только картинки, иконки и курсоры добавить. Если надо бинарные данные без сторонних продуктов не обойтись
(Я говорю о Delphi 7 и ниже)
 

Зачем так категорично? DelphiWorld:
 
Интегрирование в EXE-шник других файлов  
--------------------------------------------------------------------------------
Автор: Delirium
WEB-сайт: http://delphibase.endimus.com  
 
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Интегрирование в EXE-шник других файлов
 
Процедура из указанного файла (FileName) создаёт unit в котором объявлен,
заполненный побайтово, массив и процедура сохранения этого массива обратно
в файл. Таким образом можно включить в один EXE-шник множество других
файлов (dll, ocx, dbf и т.п.) - прикрепить их как unit-ы. Фактически,
после сжатия EXE-шника программами типа UPX, получаем довольно компактный
файл, который можно использовать в качестве дистрибутива, например.
 
Зависимости: SysUtils, System
Автор:       Delirium
Copyright:   Delirium (Master BRAIN)
Дата:        22 мая 2002 г.
***************************************************** }
 
procedure FileToPas(FileName: string);
var
  BF: file of Byte;
  F: TextFile;
  P, N, S: string;
  BFSize: integer;
  BBB: Byte;
begin
  AssignFile(BF, FileName);
  Reset(BF);
  BFSize := FileSize(BF);
  P := ExtractFilePath(FileName);
  N := ExtractFileName(FileName);
  N := ChangeFileExt(N, '.PAS');
  AssignFile(F, N);
  ReWrite(F);
  Writeln(F, '(* Generated by Master BRAIN (C) 2002 *)');
  Writeln(F, 'unit ' + ChangeFileExt(N, '') + ';');
  Writeln(F);
  Writeln(F, 'interface');
  Writeln(F);
  Writeln(F, 'const FileSize:integer=' + IntToStr(BFSize) + ';');
  Writeln(F, 'FileData:array[0..' + IntToStr(BFSize - 1) + '] of Byte=');
  Writeln(F, '(');
  while not Eof(BF) do
  begin
    S := '';
    while (not Eof(BF)) and (Length(S) < 80) do
    begin
      Read(BF, BBB);
      S := S + IntToStr(BBB) + ',';
    end;
    if Eof(BF) then
      Delete(S, Length(S), 1);
    Writeln(F, S);
  end;
  CloseFile(BF);
  Writeln(F, ');');
  Writeln(F);
  Writeln(F, 'procedure SaveToFile(FileName:String);');
  Writeln(F);
  Writeln(F, 'implementation');
  Writeln(F);
  Writeln(F, 'procedure SaveToFile(FileName:String);');
  Writeln(F, 'var F:File of Byte;');
  Writeln(F, ' i:integer;');
  Writeln(F, 'begin');
  Writeln(F, 'AssignFile(F,FileName);');
  Writeln(F, 'ReWrite(F);');
  Writeln(F, 'for i:=0 to FileSize-1 do Write(F,FileData[i]);');
  Writeln(F, 'CloseFile(F);');
  Writeln(F, 'end;');
  Writeln(F);
  Writeln(F, 'end.');
  CloseFile(F);
end;

Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 18:24 26-02-2006
vshersh



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

Цитата:
vshersh  
 
Цитата:
 
IMHO средствами делфи можно только картинки, иконки и курсоры добавить. Если надо бинарные данные без сторонних продуктов не обойтись  
(Я говорю о Delphi 7 и ниже)  
     
Зачем так категорично? DelphiWorld...

Я говорил о встроенном редакторе ресурсов Delphi, который как таковой отсутствует
Есть Image Editor, но он сохраняет в res-файлы только картинки и иконки.
Например, вижуал студия позволяет редактировать ресурсы вручную.
Хотя, опять же IMHO , компоненты RX - это фундаментальная библиотека для делфи, поэтому подобные проблемы волновать не должны
 
А подход предложенный Delirium'ом конечно интересен, но, IMHO, не очень удобен
 

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 20:59 26-02-2006
LordMAD



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

Цитата:
Я говорил о встроенном редакторе ресурсов Delphi, который как таковой отсутствует  

Об .RC-файлах мы не слышали? brcc32.exe удаляем из папки Bin за ненадобностью сразу после установки Delphi?

Всего записей: 378 | Зарегистр. 01-10-2002 | Отправлено: 21:36 26-02-2006
Schatz



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

Цитата:
Насколько я понял тебя устроит такое-же приложение как в демке IdTCPDemo, только с ActiveX-клиентом?  

Цитата:
А не сгодятся события от самого компонента TIdTCPClient:  
OnConnected  
OnDisconnected  
и OnWork ?  
Да, это именно то что мне нужно, и события эти подойдут, а по анологии я смогу уже сделать все остальное.
 
Я даже не знаю как тебя благодарить, буду сильно обязан.

Всего записей: 55 | Зарегистр. 31-05-2005 | Отправлено: 08:06 27-02-2006 | Исправлено: Schatz, 08:10 27-02-2006
okrom

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет.
Нужно удалить TabSheet с кнопкой при нажатии на нее. В хелпе сказано:
 
Never explicitly free a component within one of its own event handlers or the event handler of a component it owns or contains. For example, don’t free a button, or the form that owns the button, in its OnClick event handler.
 
Как это можно обойти?

Всего записей: 8 | Зарегистр. 08-06-2005 | Отправлено: 10:42 27-02-2006
   

Страницы: 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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi
ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru