powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ActiveX на основе RxCalcEdit выпадает с access violation
1 сообщений из 1, страница 1 из 1
ActiveX на основе RxCalcEdit выпадает с access violation
    #32239868
slydiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал ActiveX на основе RxCalcEdit, при загрузке в IE выпадает с access violation. Аналогичный ActiveX на основе TDateTimePicker прекрасно работает.

Положил RxCalcEdit на TActiveForm - все в порядке. Но это не удобно, нужно переписывать все свойства ActiveX объекта.

TRxCalcEdit является наследником TCustomComboEdit (файл ToolEdit.pas из пакета RXLib)

В конструкторе создается кнопка (справа от поля Edit).

Код: plaintext
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.
constructor TCustomComboEdit.Create(AOwner: TComponent); 
begin 
  inherited Create(AOwner); 
{$IFDEF RX_D3} 
  ControlStyle := ControlStyle + [csCaptureMouse]; 
{$ENDIF} 
  AutoSize := False; 
  FDirectInput := True; 
  FClickKey := scAltDown; 
  FPopupAlign := epaRight; 
  FBtnControl := TWinControl.Create(Self); 
{$IFDEF WIN32} 
  with FBtnControl do 
    ControlStyle := ControlStyle + [csReplicatable]; 
{$ENDIF} 
  FBtnControl.Width := DefEditBtnWidth; 
  FBtnControl.Height :=  17 ; 
  FBtnControl.Visible := True; 
  FBtnControl.Parent := Self;                    // Access violation  здесь !!! 
  FButton := TEditButton.Create(Self); 
  FButton.SetBounds( 0 ,  0 , FBtnControl.Width, FBtnControl.Height); 
  FButton.Visible := True; 
  FButton.Parent := FBtnControl; 
  TEditButton(FButton).OnClick := EditButtonClick; 
  Height :=  21 ; 
  FDefNumGlyphs :=  1 ; 
  FGlyphKind := gkCustom; 
end; 


Еще точнее access violation наступает в процессе прорисовки созданной кнопки.
Сразу после FBtnControl.Parent := Self;
вызывается TCustomComboEdit.WMSize,
потом TCustomComboEdit.UpdateBtnBounds, и ... access violation

Причем после нажатия ОК, ActiveX нормально прорисовывается и работает дальше.

Может есть какой патч для RXLib, где кнопка в TCustomComboEdit создается каким-то другим образом (не в конструкторе)?

Кроме того есть другая проблема - не работают кнопки стрелок и backspace.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ActiveX на основе RxCalcEdit выпадает с access violation
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]