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

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

Модерирует : 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 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 103 104 105 106 107 108 109 110 111

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

data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаем новые возможности и баги
Просьба писать только про Delphi 2009 и выше - по остальным версиям есть соответствующая тема.
Вопросы вареза здесь не обсуждаются !!!
См. также:
Известные важные баги Delphi 2010:

Описание________________________________________________ Исправлено Решение/Альтернатива_____________________
  1. Внимание !  Деинсталляция D2010 нарушает работу D2007 и D2009 !  
При деинсталляции удаляются CC3280MT.DLL и CC3290MT.DLL из Windows\System32,   необходимые для работы D2007 и D2009 соответственно.
Сделайте резервные копии
  2. Code Formatter не работает, если не инсталлирован пакет моделирования.   В нем также присутствует множество багов. Используйте с осторожностью.   1.   JEDI CodeFormat 2.44 SVN Snapshot (~750Kb)   Требуются JCL и JVCL  
2.GExperts with Formatter
  3. Не работает F1 в Object Inspector Update 2   IDEFixPack 2.9 от Andreas Hausladen
(dev. snapshots)
  4. Если IDE начинает падать с сообщением "Out of resources", возможно, что поврежден .res файл проекта. Удалить его, запустить IDE, открыть проект - новый .res файл будет создан автоматически.
  5. В редакторе не работает Class Completion, если в декларируемом классе есть поля с шаблонами. Перед декларированием поля добавить public или private и т.д.
  6. TTrayIcon.ShowBalloonHint() не работает на ОС ниже Vista [QC 77561] Update 2 * Установить Update 2   * ИЛИ почитать о причинах и решении проблемы на форуме embarcadero и в QC   * ИЛИ воспользоваться альтернативой, например Cooltray 4.4.0
  ...      


Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 14:28 26-08-2009 | Исправлено: data man, 18:27 06-08-2010
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
phi1
Просто выберите другую демку, где нету частых вызовов Synchronize. В интернете таких должно быть много.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 21:38 02-12-2011
indapublic



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, возникла проблема - некоторые функции  связанные с базами данных, например выборки или установка значений (через FIBDataset или FIBQuery)  срабатывают со второго раза. Такое чувство, что компонент связи с БД  неактивен и начинает реагировать только на вторую команду.Подсказажите как решить данную проблему? в каком компоненте искать и какой параметр?

Всего записей: 200 | Зарегистр. 05-02-2008 | Отправлено: 15:23 04-12-2011
volser

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

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 17:33 04-12-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть информативная инструкция как и с чем кушаются дженерики и class helpers, желательно на русском?

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 16:23 08-12-2011
YetiReal

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
indapublic
Транзакции явно стартуются и коммитятся? Если нет, то что в AutoCommit у FIBDataSet и в qoCommitTransaction у FIBQuery.Options?

Всего записей: 7 | Зарегистр. 24-05-2007 | Отправлено: 20:54 08-12-2011
volser

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanaseduard
Дженерики нужны для списков, хелпер для расширения классов. Что именно интересует?

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 21:54 08-12-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volser
Хотелось бы почитать по подробней на русском с примерами. А также понять где это удобно применять.

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 23:19 08-12-2011
JAPWork

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanaseduard
На Delphifeeds.ru была ссылка на статью о дженериках.

Всего записей: 470 | Зарегистр. 12-02-2003 | Отправлено: 23:56 08-12-2011
tanaseduard



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

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 23:57 08-12-2011
JAPWork

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanaseduard
http://keeper89.blogspot.com/2011/07/delphi.html

Всего записей: 470 | Зарегистр. 12-02-2003 | Отправлено: 00:16 09-12-2011
perceptron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 tanaseduard:
про генерики на русском можно здесь глянуть:
http://www.tdelphiblog.com/2009/10/generics-delphi-2009-win32.html

Всего записей: 433 | Зарегистр. 23-12-2005 | Отправлено: 23:17 10-12-2011
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А у меня вот тоже вопрос про дженерики. Никто не в курсе — не приводит ли использование дженериков к каким-либо дополнительным расходам (память, быстродействие, размер экзешника и т. п.)?  
Похожи ли в этом смысле дженерики на регэкспы, которые, при всей их красоте, не рекомендуется применять там, где без них можно обойтись?
Может быть, кто-то пробовал измерять реальное быстродействие дженериков в сравнении с традиционными классами? Или м. б. публикации были про это (не про дженерики вообще, а про эффективность их использования)?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 17:12 12-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
По разбуханию экзешника объявление в модуле одного дженерика эквивалентно написанию соответствующего класса собственноручно. Это кстати легко увидеть если воспользоваться новым RTTI - в модуле появится новый класс с заковыристым названием. По этой причине рекомендуется делать так:
Код:
type
  TMyList = class(TList<TMyItem>);
И дальше уже во всех модулях юзать только TMyList. Что касается быстродействия то тут все зависит только от алгоритмов, реализованных в конкретном обобщенном классе. В общем дженерики использовать можно вполне спокойно, особенно в последних версиях делфей.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:23 12-12-2011 | Исправлено: Frodo_Torbins, 18:24 12-12-2011
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins,
не совсем понял. Ты имеешь в виду, что  
 
TMyList = class(TList<TMyItem>);
 
— это эффективнее, чем
 
TMyClass = class
  FMyList: TList<TMyItem>;
  ...
end;
 
?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 18:55 12-12-2011 | Исправлено: Ludens, 21:23 12-12-2011
ppkp

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

Цитата:
кто-то пробовал измерять реальное быстродействие дженериков в сравнении с традиционными классами?

Применяю дженерики при работе по приему информации через внешнее устойство - более 20 раз в секунду создается экземпляр TList<TMyItem> и добавляется в файл. В скорости разницы не заметил (по сравнению с обычным TList, который использовал раньше, еще в D7).

Всего записей: 480 | Зарегистр. 13-04-2006 | Отправлено: 19:20 12-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Я имел ввиду, что можно в каждом модуле писать прямо TList<TMyItem>. И в каждом модуле создастся своя копия этого класса. По крайней мере так описывал этот процесс Марко Канту в своей книге по D2009.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 22:23 12-12-2011 | Исправлено: Frodo_Torbins, 22:25 12-12-2011
WSWCORP

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может вопрос и глупый, но загнал в тупик... В OnCreate создается форма, после закрытия главная форма теряет фокус... Как его вернуть обратно в форму?

Всего записей: 47 | Зарегистр. 16-08-2005 | Отправлено: 12:09 20-12-2011
wasilissk

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

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 13:13 20-12-2011
WSWCORP

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

Код:
 
  Application.Initialize;
  Application.MainFormOnTaskBar:=False;
  Application.CreateForm(TGlav_form, Glav_form);
  pass:=Tpass.Create(Application);
  pass.Visible:=False;
  pass.TopMost:=True;
  if pass.ShowModal = 2 then
    begin
      pass.Free;
      Application.Terminate;
    end
  else
    begin
        Application.Run;
    end;
 
procedure Tpass.FormCreate(Sender: TObject);
begin
  if rez<> -10 then  //-6
    begin
      win_err:=Twin_err.Create(Application);
      win_err.Visible:=False;
      win_err.TopMost:=True;
      win_err.ShowModal;
      win_err.Free;
      if rez<0 then Application.Terminate;
    end
end;
 
procedure Twin_err.Button1Click(Sender: TObject);
begin
  win_err.Close;
end;
 

 
В D2010 такая конструкция работает на ура... А в DelphiXE2 - форма Pass после вывода формы ошибки теряет фокус. Если форма ошибки не выводилась - фокус на месте...

Всего записей: 47 | Зарегистр. 16-08-2005 | Отправлено: 13:27 20-12-2011
wasilissk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WSWCORP
Зачем это?

Код:
      win_err.Visible:=False;  
      win_err.TopMost:=True;
 

ShowModal и так показывает поверх вызвавшей формы.

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 14:54 20-12-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 103 104 105 106 107 108 109 110 111

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru