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

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

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

ShIvADeSt (19-05-2010 05:14): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=11215  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение темы Вопросы по Delphi (до версии 2009) - часть 4

Познаем сами, помогаем другим...
Обсуждаем вопросы, не связанные с юникоидными версиями Delphi - для этого есть соответствующая тема (см. ссылки ниже).

Правила топика:
    Прежде чем спрашивать:
  1. Желательно изучить вопрос, попытаться найти ответ в прилагаемых мануалах, хелпах и анализируя исходники.
  2. Выполнить поиск по топику (открыть "Версия для печати" и поискать ответ там).
  3. Применить фильтр по разделу "Прикладное программирование". Ответы на многие старые вопросы могли быть даны в отдельных темах.
  4. Продумайте вопрос. На поверхностные вопросы вы получите поверхностные ответы, или вообще ответов не получите.
  5. Желательно указывать версии используемого компилятора и операционной системы.
    Прежде чем отвечать:
  1. Если не можете помочь, не мешайте.
  2. Если уж вы отвечаете на вопрос, давайте ответ по сути.
  3. Если вы не уверены, так и говорите! Ошибочный, но авторитетно звучащий ответ хуже, чем отсутствие ответа.
  4. Задавайте дополнительные вопросы, чтобы получить больше информации.
  • Отсутствие ответа не равносильно игнорированию - иногда участники форума просто не знают ответ. Повторная посылка вопроса не приветствуется. Посты типа "неужели никто не знает ответа..." или "может мне все-таки кто-нибудь ответит" недопустимы.  
  • Все большие куски кода (более 5 строк) оформляем в тег [morе] дабы уменьшить размер поста. FAQ по тегу [morе].

  • Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:09 28-06-2009 | Исправлено: psa1974, 12:00 02-02-2010
    ShIvADeSt



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

    Цитата:
    как это сделать я допер, вопрос в том, как в конструкторе сделать этот хинт так, что бы  он не закрывал все что видно на скрине1.. а то работать будет как то не удобно потом..

    SetLayeredWindowAttributes создавай полупрозрачное окно, либо попонятнее объясни что тебе надо и причем тут конструктор.  
    Насчет неудобно работать - модальное окно не подразумевает одновременную работу и чтение подсказки - либо уменьшай подсказку и показывай через Show (а не ShowModal) либо делай полупрозрачным либо объясняй что хочешь.

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

    Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 10:26 21-09-2009
    Aleksandr N

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Hiken
    Ну это я пока только в общеобразовательных целях. Взять какой-нибудь сертификат и прикрутить к EXE чтобы был с цифровой подписью. Важен сам процесс.

    Всего записей: 1665 | Зарегистр. 25-02-2008 | Отправлено: 11:29 21-09-2009
    Frodo_Torbins

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    nkurrich
    http://delphikingdom.com/asp/answer.asp?IDAnswer=71458
    Delta RuBoard
    Я так понимаю, это у вас панелька на форме? Можно сделать ей "Send to Back". Но лучше сделать отдельную форму, и показывать ее модально.

    Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 11:40 21-09-2009 | Исправлено: Frodo_Torbins, 11:42 21-09-2009
    ShIvADeSt



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

    Цитата:
    Я так понимаю, это у вас панелька на форме? Можно сделать ей "Send to Back". Но лучше сделать отдельную форму, и показывать ее модально.

    оО - подобный изврат мне и в голову прийти не мог Я думал там на скрине форма с типом bsNone и кнопка для закрытия. А тут вонано как все замудрено.

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

    Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 11:50 21-09-2009
    Frodo_Torbins

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    V1s1ter
    Сверил по скорости наши алгоритмы кодирования с 25 страницы

    Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 11:53 21-09-2009 | Исправлено: Frodo_Torbins, 11:54 21-09-2009
    nkurrich



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

    Цитата:
    Я так понимаю, это у вас панелька на форме? Можно сделать ей "Send to Back". Но лучше сделать отдельную форму, и показывать ее модально.

     
     
     
    как бэ не очень понял(

    Всего записей: 20 | Зарегистр. 16-09-2009 | Отправлено: 12:11 21-09-2009 | Исправлено: nkurrich, 13:58 21-09-2009
    Delta RuBoard



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    бр, я на 2м скрине образно нарисовал квадрат в фотошопе....  
    я думал обьяснил понятно, но видать не получилось. меня интересует как этот квадрат вместе с крестиком на нем засунутть на первом рисунке так, что бы его не было видно? ну например как вариант - поместить его на задний фон, но тогда возникает вопрос - что с ним делать для того, что бы после нажатия на "?" он появлялся на переднем плане?


    ----------
    мой маленький блог
    Создание on-line игр

    Всего записей: 382 | Зарегистр. 21-06-2005 | Отправлено: 14:51 21-09-2009
    V1s1ter



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

    Цитата:
    Сверил по скорости наши алгоритмы кодирования с 25 страницы  

    Ну и...
     
     
    Добавлено:
    Meister Floh
    Eсли Ваш вариант работал, зачем тогда Delta RuBoard мне голову морочил?
    Или в попыхах не заметил...

    Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:29 21-09-2009
    Frodo_Torbins

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Delta RuBoard
    Создайте новую форму с нужным содержимым и показывайте через ShowModal.
     
    V1s1ter
    Под D7 мой вариант быстрее в среднем в 5 раз, а под D2009 всего в 2. При этом общие результаты под D2009 чуть ли не в 3 лучше. Такая вот наглядная демонстрация преимуществ FastMM и FastCode

    Цитата:
    Eсли Ваш вариант работал, зачем тогда Delta RuBoard мне голову морочил?
    Или в попыхах не заметил...

    хз

    Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 15:57 21-09-2009 | Исправлено: Frodo_Torbins, 15:58 21-09-2009
    Delta RuBoard



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

    ----------
    мой маленький блог
    Создание on-line игр

    Всего записей: 382 | Зарегистр. 21-06-2005 | Отправлено: 17:08 21-09-2009
    GPSGURU



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, как в Делфи 2009 сделать, чтобы вверху редактора кода был такой combobox с перечислением всех процедур, функций и классов, используемых в этом юните? ЧТобы выбрал нужный - и в том участке кода и очутился. Помню что такой был в 2006 Делфи, а здесь найти не могу. Подскажите где в опциях его включить?

    Всего записей: 84 | Зарегистр. 06-05-2008 | Отправлено: 08:23 22-09-2009
    Varenik



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    GPSGURU
    Ничего не забыл? Типа Castalia или CnWizards?

    ----------
    Если нравится, считайте, что получилось…

    Всего записей: 1766 | Зарегистр. 21-07-2001 | Отправлено: 10:02 22-09-2009
    GPSGURU



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

    Всего записей: 84 | Зарегистр. 06-05-2008 | Отправлено: 11:14 22-09-2009
    jonikDk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет всем.
    Есть мастер-контролеры (выступает в качестве TCP сервера). Один такой контроллер обслуживает несколько обычных контроллеров. Мастер контроллеров несколько. Сейчас их 2, в будущем будет больше. 2 мастер контроллера осблуживают 12 обычных контроллеров.
    Теперь собственно задача.
    Мне из Delphi доступен только мастер контроллер. Мне необходим независимый доступ к каждому обычному контроллеру.  
    Так вот собственно вопрос,  
    1 вариант сделать самому сразу 12 потоков и в каждом потоке коннектиться к мастер контроллеру, но с запросом по конкретному контроллеру.  
    2 вариант сделать 2 потока для связи с мастер контроллерами. В таком варианте будет очередь запросов или компоненты сами как то могут создать потоки ?  
     
    C TCP не особенно дружу, так как в осоновном с БД дела имел, так что если можно предложите наилучший вариант.
     
    P.S. для каждого обычного контроллера необходимо отдельное соединение еще с БД.  
     
    Добавлено:
    Компоненты скорее всего буду использовать ICS overbyte  
     
    Создал тему, просьба писать здесь
    http://forum.ru-board.com/topic.cgi?forum=33&topic=10641

    Всего записей: 1599 | Зарегистр. 01-03-2004 | Отправлено: 14:02 22-09-2009 | Исправлено: jonikDk, 15:18 22-09-2009
    ShIvADeSt



    Moderator
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    jonikDk
    Сделайотдельный топик по этому вопросу

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

    Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 15:00 22-09-2009
    GPSGURU



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А для чего много потоков создавать? Это совсем необязательно. Есть хорошая книга "О чём не пишут в книгах по Delphi" - она мне очень помогла в написании подобных приложений.

    Всего записей: 84 | Зарегистр. 06-05-2008 | Отправлено: 15:19 22-09-2009
    V1s1ter



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

    Цитата:
    Под D7 мой вариант быстрее в среднем в 5 раз, а под D2009 всего в 2. При этом общие результаты под D2009 чуть ли не в 3 лучше. Такая вот наглядная демонстрация преимуществ FastMM и FastCode

    Интересно, что такая разница, я конецно код не оптимизировал (о чем сразу и написал), но
    была надежда, что Result := Result+Символ не будет каждый раз генерировать выделение памяти и ее копирование. Если еще помните, компилировал с включенной оптимизацией?

    Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 20:15 23-09-2009
    Frodo_Torbins

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

    Цитата:
    была надежда, что Result := Result+Символ не будет каждый раз генерировать выделение памяти и ее копирование

    Похоже FastMM в этой ситуации делает какую то оптимизацию, потому и такая разница со старыми делфями. Включение оптимизации на результаты почти не влияет.
    Кстати вот сами результаты для довольно большого файла:
    D7: 600 и 1500 тиков;
    D2009: 280 и 500 тиков.
    И демки: Цезарь2.rar (Обязательно снимите галку "Установить Яндекс.Бар.").

    Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 21:57 23-09-2009 | Исправлено: Frodo_Torbins, 22:08 23-09-2009
    Smokeer

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

    Код:
     
    var
     F : TextFile;
    begin
      AssignFile(f, 'C:\1238.txt');
      ReWrite(f);
      Writeln(f,'Текст... текст... текст...);
      CloseFile(f);
    end;
     

     для кнопки на форме всё работает(создается или перезаписывается файл C:\1238.txt), но если то же самое дать внутри нового компонента я получаю ошибку "упущен оператор или точка с запятой" на ReWrite'е?
     При этом, в том же таки компоненте нормально работает Append?
     Как тогда создать новый файл для записи в него?
     
    Добавлено:
    Ещё одна похожая проблема. (с формы работает, а в компоненте даёт ошибку)
     

    Код:
     
    procedure TSmkCopyFile.Execute;
    var
     F: TSearchRec;
     A: string;
    begin
     FindFirst('C:\*.*', faAnyFile, F);
     A:=F.Name;
     FindClose(F); <- тут говорит ошибку
    end;
     

     
    E2010. Несовместимость типов: 'Cardinal' and 'TSearchRec'.
    Тоже непонятно. Откуда там может быть несовместимость и почему она образуется именно когда пишешь свой компонент?

    Всего записей: 781 | Зарегистр. 25-09-2005 | Отправлено: 02:08 24-09-2009 | Исправлено: Smokeer, 02:09 24-09-2009
    ShIvADeSt



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

    Цитата:
    procedure TSmkCopyFile.Execute;
    var
     F: TSearchRec;
     A: string;
    begin
     FindFirst('C:\*.*', faAnyFile, F);
     A:=F.Name;
     FindClose(F); <- тут говорит ошибку
    end;  

    Пиши из какого модуля идет вызов FindClose - в данном случае надо явно указать Sysutils.FindClose (просто данная процедура прописана в двух модулях - Sysutils и Windows и компилятор берет какая в голову взбредет.

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

    Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 03:26 24-09-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 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

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (до версии 2009) - часть 5
    ShIvADeSt (19-05-2010 05:14): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=11215


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru