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

» Вопросы по Delphi (до версии 2009) - часть 5

Автор: OOD
Дата сообщения: 08.07.2009 08:52
volser
Date Controls DBGrid
Date Access DataSource
BDE Table
Автор: volser
Дата сообщения: 08.07.2009 10:48
OOD
В dbf файле выставлен правильный charset?
Автор: OOD
Дата сообщения: 08.07.2009 10:57
volser
Спасибо разобрался нужно было настроить драйвер в BDE Administrator на русскую кодировку
Автор: FalconGuy
Дата сообщения: 08.07.2009 11:30
Иммется программа написанная на D7. При запуске под ВинХР Сп3 на коре дуо 8500 выдает ошибку Runtime 216 - на старом атлон хп 1700 работала нормально. Есть ли универсальный патчер для решения этой проблемы - исходник и автор не доступны.
Автор: volser
Дата сообщения: 08.07.2009 11:32
FalconGuy
Возможно проблема в том что процессор имеет больше одного ядра. Была в нете какая то программа которая привязывала программу к конкретному ядру. Может она поможет.
Автор: Andrey128
Дата сообщения: 08.07.2009 13:27
С некоторых пор в редакторе Delphi 2009 стал показываться упрощенный хинт.
Например: создаем форму, дважды кликаем по ней и проваливаемся в

Код: procedure TForm1.FormCreate(Sender: TObject);
...
Автор: SIgor33
Дата сообщения: 08.07.2009 16:16
Возник такой вопрос сохраняю в sql файл дамп таблицы у которой одно из поле varbinary(max) с помощью TMSDump от SDAC так вот эти двоичные данные сохраняюся до какого момента хорошо, а в конце уже идут не двоичные коды, а вот дальше пустота (длиная такая) хотя все должно закачиваться. Ну и соотвественно при восстановление ругается и ничег не делает
Автор: volser
Дата сообщения: 08.07.2009 16:25
SIgor33
Возможно в поле встречаются символы которые нельзя сохранить в текстовый файл. Поэтому такие проблемы.
Автор: AlexNMelnikov
Дата сообщения: 08.07.2009 16:49
SIgor33
А длина не превышает 8000 байт?
Автор: SIgor33
Дата сообщения: 08.07.2009 16:50
volser
Там нормальный rtf файл. Правда с таблицами. Попробую без них
Автор: Maks150988
Дата сообщения: 08.07.2009 18:15
Всем привет. Объясните как разадресовать указатель, чтобы получить его тип.

На си код такой:

Код: LocalAlloc(LPTR, sizeof(*ppd));
Автор: Frodo_Torbins
Дата сообщения: 08.07.2009 18:37
Maks150988
А что делает ваш код? Я бы попробовал написть так: LocalAlloc(LPTR, sizeof(ppd^));
Автор: JohnSilver182
Дата сообщения: 08.07.2009 18:42
Hi

У меня все формы создаются динамически. Но как побочный эффект , нельзя обратиться к форме по имени Только внутри формы использовать self
Не подскажите как побороть ?



procedure TDM.FormLoaderMDI (const FormName:String;mode:integer=-1;code:integer=-1;modal:integer=0;sql:string='');
var
I:integer;
//F: TCustomForm;
F:TForm;
bExists:boolean;
begin
try
bExists:=false;
for I := 0 to Screen.FormCount - 1 do
if Lowercase('t'+Screen.Forms[i].Name)= Lowercase(FormName) then
begin
bExists:=true;
F:=Screen.Forms[i];
end;

if bExists=false then F := TFormClass(FindClass(FormName)).Create(Application)
else f.BringToFront;

if Mode<>-1 then SetStrProp(F, 'idMode', IntTostr(Mode));
if Code<>-1 then SetStrProp(F, 'idCode', IntTostr(Code));
if SQL<>'' then SetStrProp(F, 'idSQL', SQL);
finally
end;

end;
Автор: volser
Дата сообщения: 08.07.2009 18:53
JohnSilver182
Приведи форму к соответствующему классу и работай уже с ним. Или используй интерфейсы.
Автор: Andrey128
Дата сообщения: 08.07.2009 18:53
Maks150988

Код: HLOCAL LocalAlloc(UINT uFlags, SIZE_T uBytes);
Автор: JohnSilver182
Дата сообщения: 08.07.2009 19:01

Цитата:
Приведи форму к соответствующему классу

???????????????????????????????????????????????????????
Автор: Maks150988
Дата сообщения: 08.07.2009 19:01
Frodo_Torbins
Ну вобщем я создаю свой контрол (решил заодно переписать код системного прогресс бара на делфи и посмотреть что поулчится, пока мудрил с созданием своего контрола) и эта структурка хранит некоторую инфу о нем для оконной функции. Хм, как-то не додумался поставить домик после переменной. На каком-то сайте в примере кто-то предлагал ставить этот значок перед переменной, ну я и сделал так - компилятор не проглотил (я вообещ в эти дебри не очень-то влезаю, без понятия). Вроде работает, спасибо.
Andrey128
Спасибо заодно.
Автор: volser
Дата сообщения: 08.07.2009 19:11
JohnSilver182

F: TMyForm;
F := TFormClass(FindClass(FormName)).Create(Application) as TMyForm;

Если общего предка нет, то тогда используй интерфейсы.
Автор: delover
Дата сообщения: 08.07.2009 20:28
JohnSilver182
А кто мешает присвоить форме имя? Да хоть русскими буквами.

if bExists=false then
begin
F := TFormClass(FindClass(FormName)).Create(Application);
F.Name := FormName; (+Цифирь если таких форм несколько)
end
else f.BringToFront;
Автор: JohnSilver182
Дата сообщения: 08.07.2009 21:01
delover ШАМАН !!!
Автор: SIgor33
Дата сообщения: 09.07.2009 08:26
AlexNMelnikov
Гораздо больше 8000 символов. А что это должно как-то влиять.
Автор: volser
Дата сообщения: 09.07.2009 10:17
delover
Присвоил имя и что? Как теперь по имени форме обращаться к форме?
Автор: RedPromo
Дата сообщения: 09.07.2009 18:46
volser
Определить место от куда ты хочеш к ней обращаться получить класс данной формы и можно работать.
Найти небходиму форму можно по имени класса, или имени формы которую ты создал. Только не забываем что будет если есть F.Name := FormName; (+Цифирь если таких форм несколько) - тоесть про Цифрь не забываем если искать по имени формы.
Автор: JohnSilver182
Дата сообщения: 10.07.2009 07:16
delover минутку . А какая разница как я назову форму ? Я так понимаю что при динамичеком создание форм в принципе нельзя использовать типа :
FormMy.labe1.caption='бла бла бла' и т.д
Автор: ShIvADeSt
Дата сообщения: 10.07.2009 08:13
JohnSilver182
Смотря что ты понимаешь под динамическом создании форм. Я например понимаю это так - что форма физически создана, но приложение (Application) при старте не делает ей Create. То есть в памяти ее нет. В нужный момент я делаю Create Для формы, после этого обращаюсь к ней по чему угодно и к ее контролам тоже. Все зависит от целей и методов. Что хочешь добиться и как.
Автор: JohnSilver182
Дата сообщения: 10.07.2009 08:48
ShIvADeSt
АГА . Скорее всего ты делаеш просто TMyForm1.Create .
Я хотел что то универсальное сделать.
Автор: ShIvADeSt
Дата сообщения: 10.07.2009 09:18
JohnSilver182

Цитата:
Я хотел что то универсальное сделать.

Тогда создавай окна на АПИ в рантайме. И грузи контролы из ресурсов. Просто ИМХО ты сам себе создаешь проблемы, чтобы потом их мужественно преодолеть. Смысл динамического создания форм - уменьшить объем потребляемой памяти, мой способ этому удовлетворяет. Что хочешь добиться ты кроме гемора мне если честно не понятно.
Автор: FalconGuy
Дата сообщения: 10.07.2009 09:37
Может кто знает - есть ли модификация Async Pro работающая на многоядерных процессорах и где ее взять?
Автор: volser
Дата сообщения: 10.07.2009 10:17
JohnSilver182

Цитата:
Я хотел что то универсальное сделать.

Я уже писал. Если хочешь сделать что то универсальное используй интерфейсы (interface).
Автор: JohnSilver182
Дата сообщения: 10.07.2009 10:58

Цитата:
Я уже писал. Если хочешь сделать что то универсальное используй интерфейсы (interface).

Это сложно наверно ???

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Clipper 5


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