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

» Вопросы по компонентам для Delphi, C++ Builder 2

Автор: FRALX
Дата сообщения: 09.12.2006 19:18
EZH
xy
Данные могут откатываться и в момент редактирования еще до попадания их в БД, тогда это делать надо на уровне приложения. В этом случае изменения данных нужно записывать в лог и откатывать по шагам. Организовать это можно через ClientDataSet он подерживает откат изменений по шагам
ClientDataSet1.CheckBrowseMode;
ClientDataSet1.UndoLastChange(true);
единственный недостаток данные должны проийти Post;
Если делать все самому то можно повесится на событие DataSource.OnDataChange и логировать изменения
затем откатывать
Очень примитивный пример: [more]
var
Form1: TForm1;
Log : TStrings;
isUndo : boolean;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
isUndo:=true;
if log.Count>0 then begin
ClientDataSet1.Fields[1].AsString:=Log.Strings[Log.Count-1];
if log.Count>1 then Log.Delete(Log.Count-1);
end;
isUndo:=false;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
isUndo:=false;
Log:=TStringList.Create;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
Log.Free;
end;

procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
if (Field=nil) or isUndo then Exit;
if Field.FieldName='Test' then
Log.Add(Field.AsString);
end;
[/more]
Автор: samusev
Дата сообщения: 12.12.2006 12:30
Подскажите тривиальное.

Надо на форме сделать прозрачные панели и лейблы. В ХР проходит через установку transparentColor. Но стоит только в ХР отключить все её ухищрения и раскраски (настройка декстопа) как панели становятся черными.

Чувствую что истина где-то рядом, но что-то не могуу её найти.

зы. Воспользоваться компонентами сторонних разработчиков - не предлагать ))) про rxLib я и сам знаю.
Автор: vshersh
Дата сообщения: 12.12.2006 13:23

Цитата:
как панели становятся черными.

Попробуй убрать из списка используемых юнитов XPMan (и удалить соотв. компоненты, если есть)
Автор: samusev
Дата сообщения: 12.12.2006 14:20

Цитата:
Попробуй убрать из списка используемых юнитов XPMan (и удалить соотв. компоненты, если есть)


Да нет дело как раз не в манифесте. Ведь программа так себя ведет и в 98 и в NT
То есть речь о том что панель и лебл изначально не могут быть прозрачными. т.е. не иметь цвета в фоне - их фон всегда закрашивается - даже при установке его в clNone.
Именно с этим значением фон у них рисуется черным!

А в ХР эту реализуется через всякие там альфа блендинги и проч. транпаранты))

Простая задача - сплешформа. на ней картинка. на картинке Label. он должен иметь только надпись и работать во всех версиях windoz. Блин такою простую задачу невозможно просто решить?
Автор: DaMas
Дата сообщения: 12.12.2006 17:39
DrLo

Использую SDAC 3.x - пока доволен.
Автор: waik
Дата сообщения: 12.12.2006 18:34
Добрых времени суток...

Вопрос для тех кто пользует Ehlib и DOA. Столкнулся с тем с чем никогда не работал. Нужен доделаный файл EhLibDOA.pas. Доделаный в смысле с поддержкой фильтрации на сервере (с меткой /*Filter*/ )/ Тот что идет в комплекте поддерживает только сортировку путем замены ORDER BY. Попробывал сделать по образу и подобию, но как то не уклюже получается, а без него работает только локальная фильтрация через STFilter (и почему то только по одному полю)ю Наверняка многие уже делали и ещё раз изобретать велосипед не хочется. Правда есть вариант, что руки выросли не оттуда и есть простое решение...
Автор: xokc
Дата сообщения: 12.12.2006 18:57
samusev

Цитата:
Простая задача - сплешформа. на ней картинка. на картинке Label. он должен иметь только надпись и работать во всех версиях windoz. Блин такою простую задачу невозможно просто решить?

А где здесь панель-то? Без панели все должно быть прозрачным и так. Если есть панель, то у нее еще есть такое гадское свойство как ParentBackground. Можно еще и сним поиграть.
Автор: Alto
Дата сообщения: 13.12.2006 03:47
samusev
А почему бы просто не нарисовать на канве картинки надпись... без использования всяких TLabel? %)
Image1.Canvas.TextOut( 10, 10, 'Я мега надпись )))))');
Автор: DaMas
Дата сообщения: 13.12.2006 09:32
В DbGridEh при DataSet.Refresh в TColumn в Footer-ах агрегатные функции не пересчитываются. Помогите решить эту проблему.
Автор: SERGE_BLIZNUK
Дата сообщения: 13.12.2006 13:16
DaMas
попробуй в событии Dataset.AfterRefresh (а также в AfterOpen, AfterEdit - по необходимости) повесить код типа:
DBGridEh1.SumList.RecalcAll;


Автор: aurally
Дата сообщения: 13.12.2006 13:30
День добрый.
А кто может сказать что-нибудь хорошее (или плохое) про DevExpress ExpressBars по сравнению с Toolbar2000+Tbx? Имеет смысл на него переходить?
Автор: ArtemiyUO
Дата сообщения: 13.12.2006 14:34
В сравнении не знаю, но я юзаю меня всем устраивает. Может какие то конкретный вопросы задаш?
Автор: stLAM
Дата сообщения: 13.12.2006 14:50
Господа, есть у кого PReport для 7 дельфи. Желательно версии 1.9.9.1 или выше. У меня для шестерки есть....
Автор: aurally
Дата сообщения: 13.12.2006 21:08
ArtemiyUO
Просто Tb2K последнее время как-то неактивно развивается, TBX вообще по ходу умер. Поэтому и тем для висты ни для 2007го офиса там в ближайшее время не предвидется. Поэтому хочется переехать на что-нибудь более живое и развивающееся. Интересна поддержка тем и стилей и png. В ExpressBars все это есть?
Автор: shkinev
Дата сообщения: 14.12.2006 07:32
Подскажите компонент для чтения данных из xls-файла формата Excel-95.
Заранее спасибо.
Автор: MagistrAnatol
Дата сообщения: 14.12.2006 09:12
Народ,подскажите как в фастрепорте сгрупировать данные и передать параметр
Автор: vshersh
Дата сообщения: 14.12.2006 09:37
MagistrAnatol
Есть отдельный топ
А по сути вопроса - там есть такая штука как Group Header - когда её добавляешь - там указываешь, по какому полю группировать. А для передачи параметра - можно завести в отчете переменную и перед построением отчета сделать так:

Код: myReport.Variables['varMyVariable'] := 57;
Автор: KUBKACH
Дата сообщения: 14.12.2006 10:17
Подскажите, пожалуйста. У меня возникла такая проблема: при установки компонента ExpressDataController выдает ошибку
[Error] cxVariants.pas(311): Undeclared identifier: 'FindVarData'
[Error] cxVariants.pas(311): Pointer type required
[Error] cxVariants.pas(322): Undeclared identifier: 'FindVarData'
[Error] cxVariants.pas(322): Pointer type required
[Error] cxVariants.pas(322): 'END' expected but ')' found
[Fatal Error] cxCustomData.pas(43): Could not compile used unit 'cxVariants.pas'
как избавиться от этой проблемы, я просто в отчаянии. Спасибо заранее.

Автор: MagistrAnatol
Дата сообщения: 14.12.2006 11:13
vshersh
пасиб
Автор: MrZeRo
Дата сообщения: 14.12.2006 15:25
KUBKACH
Проверь в твоем модуле cxVariants, есть ли в uses модуль Variants.
И вообще,
какая версия Delphi?
какая версия ExpressDataController?
Автор: KUBKACH
Дата сообщения: 14.12.2006 16:06
MrZeRo
Проверил, усе впорядке.
Delphi6, а ExpressDataController4.0

Добавлено:
Проверил, усе в порядке.
Delphi6, а ExpressDataController4.0


Добавлено:
Проверил, усе в порядке.
Delphi6, а ExpressDataController4.0


Добавлено:
MrZeRo
Проверил, усе в порядке.
Delphi6, а ExpressDataController4.0
Автор: DaMas
Дата сообщения: 14.12.2006 20:57
Подскажите, можно ли в HierCube программно накладывать фильтр на факторы ?
Автор: andead
Дата сообщения: 14.12.2006 21:53

Цитата:
Подскажите, пожалуйста. У меня возникла такая проблема: при установки компонента ExpressDataController выдает ошибку

6-ая дельфя почемуто не может разобрать такие конструкции:
{$IFNDEF DELPHI6}
...
{$ENDIF}
поэтмоу открой cxVariants.pas и удали эти комменты для компилятора, ещё я удалял блоки для линукса и кайлокса не помню почему) могу кинуть уже исправленный cxVariants.pas
Автор: KUBKACH
Дата сообщения: 15.12.2006 08:20
andead
Буду очень благодарен, а то я с этим вожусь 4-й день, все растратил, и нервы, и время.
Serch1@mail.ru
Автор: maxsv2
Дата сообщения: 15.12.2006 17:07
Подскажите, пожалуйста, какие компоненты наиболее корректно реализуют упаковку и распаковку в архив ZIP, так что потом обычный архиватор понимал . А то пробовал некоторые - они заголовки со списком файлов не пишут, и другим архиватором - не распакуешь.
редакция:
обычный архиватор - стороннипе программы: zip, winzip, rar и т.п.
они друг друга распаковывать умеют ...
Автор: xokc
Дата сообщения: 15.12.2006 18:42
maxsv2
А что такое "обычный архиватор"? - WinZIP, WinRAR или еще что-нибудь? Сам пользуюсь древним DelphiZLib. Архивы, созданные им "обычный" zlib понимает и распаковывает.
Автор: ORMADA
Дата сообщения: 18.12.2006 05:49
2 maxsv2
полностью халявный + сорцы - jbzip32
слить можна например тут хттп://homepages.borland.com/torry/vcl/compress/std/
Автор: ArtemiyUO
Дата сообщения: 18.12.2006 06:37
maxsv2
ZipForge правда платный, есть в копилке.
Автор: SergeBS
Дата сообщения: 18.12.2006 07:28
ZLIB - в составе Delphi + JRZIP - интерфейс. PKZIP его файлы прекрасно понимает. Проверено. И вообще - на torry - Components > Data Compress > Standard
Автор: VadimLou
Дата сообщения: 18.12.2006 09:18
andead, KUBKACH

Цитата:
6-ая дельфя почемуто не может разобрать такие конструкции:
{$IFNDEF DELPHI6}


Скорей всего проблемы с cxVer.inc. Можно просто попробовать задать в этом файле:
{$DEFINE DELPHI6} но лучше посмотреть почему не определяется версия
для {$IFDEF VER140} { Borland Delphi 6.0 }

Кжись подобная бага пробегала для компилера bcc - лечилось путём определения
VER140 в коммандной строке компилера ...

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: Вызов файла по относит пути и определение буквы СД-рома


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