![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Имитировать нахатие кнопок
TQuickReport © (2014-12-14 12:04:00)Возможно ли и каким образом можно имитировать нажатие кнопок Open, Save и др. на ToolBar (похоже, что они расположены именно там) после QuickReport.PreView?
TQuickReport (2014-12-18 12:28:00) [1]> Amoeba_ (17.12.14 18:17) [23]
> Как создать свое окно предварительного просмотра QuickReport отчетов?
> http://www.delphikingdom.com/asp/viewitem.asp?catalogid=489
Спасибо, хорошая ссылка
Германн (2014-12-17 23:48:00) [2]
> Smile © (17.12.14 07:33) [22]
>
> > А показ самого окна превью в твоей задаче обязателен?
>
> Обязателен, необходимо убедиться в достоверности (безошибочности)
> сформированного документа.
Если есть кому убедиться, значит и есть кому просто нажать на кнопку, а не имитировать это нажатие программно.
Amoeba_ (2014-12-17 18:17:00) [3]Как создать свое окно предварительного просмотра QuickReport отчетов?
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=489
Smile (2014-12-17 07:33:00) [4]> А показ самого окна превью в твоей задаче обязателен?
Обязателен, необходимо убедиться в достоверности (безошибочности) сформированного документа. Вывод в QuickReport (не в документы Word, Excel) спрограммирован осознано, чтобы затруднить пользователю редактирование (фальсификацию) документа.
Германн (2014-12-16 20:35:00) [5]
> TQuickReport (16.12.14 17:17) [18]
>
> > ты превью вызываешь как модальное, а мы тут паримся
>
> Я не уверен, что вызываю модально
> QuickRep1.Preview;
Это не модально. Модально PrevuewModal
А показ самого окна превью в твоей задаче обязателен? Недостаточно лишь кнопок Save, Print и т.п. на твоей форме?
TQuickReport (2014-12-16 17:44:00) [6]> Andy BitOff © (16.12.14 14:54) [16]
> ЗЫ с QT не работал, но не думаю, что это проблема ;-)
C MessageDlgPos не пробовал проверить свою идею?
TQuickReport (2014-12-16 17:24:00) [7]> Ega23 © (16.12.14 16:44) [17]
Я уже написал, что MessageDlgPos, именно как пример
В QuickRep1.Preview; мне нужно "кликнуть" (программно) по/на кнопкам Save, Print и т.п., что в общем (по конкретным точкам) не имеет никакого принципиального значения.
Мне, конкретно, хотелось бы имитировать "клики" на доступные кнопки на "форме" QuikRep.PreView
Если сочтете вопрос не заслуживающег внимания, не обижусь ...
TQuickReport (2014-12-16 17:17:00) [8]> ты превью вызываешь как модальное, а мы тут паримся
Я не уверен, что вызываю модально
QuickRep1.Preview;
Хотя не совсем понимаю, что меняет модальность
Не могу добраться до "кнопки"
Ega23 (2014-12-16 16:44:00) [9]
if MessageDlgPos('Имитировать клик по кнопке, например <Cancel>',
mtCustom, [mbOK, mbNo, mbCancel, mbIgnore], 0,
Form1.Left + 20, Form1.Top + 20) = mbOK then
begin
Preview.Cancel;
end;
Ну или какой там метод вызывается, если cancel нажать.
QR у себя в XE4 не наблюдаю, поэтому точно сказать не могу.
Andy BitOff (2014-12-16 14:54:00) [10]Ты бы хоть код свой показал, а то получится, что ты превью вызываешь как модальное, а мы тут паримся.
ЗЫ с QT не работал, но не думаю, что это проблема ;-)
TQuickReport (2014-12-16 13:41:00) [11]Если так будет проще понять то, что я хотел бы, как пример, реализовать,
MessageDlgPos('Имитировать клик по кнопке, например <Cancel>',
mtCustom, [mbOK, mbNo, mbCancel, mbIgnore], 0,
Form1.Left + 20, Form1.Top + 20);
Спасибо, что уделяете внимание этой ветке
Германн (2014-12-16 02:59:00) [12]
> Ega23 © (15.12.14 14:44) [13]
> Или я чего-то недопонимаю?
Правильно понимаешь. Только нормального полного хелпа по QR никогда не было.
Плавали - знаем. :)
Ega23 (2014-12-15 14:44:00) [13]
> Возможно ли и каким образом можно имитировать нажатие кнопок
> Open, Save и др. на ToolBar (похоже, что они расположены
> именно там) после QuickReport.PreView?
>
Я конечно очень давно QR не использовал, но, ЕМНИП, реакция на эти кнопки - суть вызов соответствующих методов Open, Save и др.
Т.е. "имитацией" будет вызов данного метода.
Или я чего-то недопонимаю?
Германн (2014-12-14 18:13:00) [14]
> В моей программе на QuickRep
И нафига тогда такие извращения? Скачай с сайта автора QR пример создания собственного превью и сделай всё что нужно по этому примеру.
http://www.quickreport.co.uk/WebInfoPage.aspx?WebInfoID=623
TQuickReport (2014-12-14 18:07:00) [15]Это QuickRep.dfm
object QRStandardPreview: TQRStandardPreview
Left = 229
Top = 191
Width = 652
Height = 579
Caption = 'Print Preview'
Color = clBtnFace
ParentFont = True
KeyPreview = True
OldCreateOrder = True
Position = poScreenCenter
ShowHint = True
OnClose = FormClose
OnCreate = FormCreate
OnKeyDown = FormKeyDown
OnResize = FormResize
PixelsPerInch = 96
TextHeight = 13
object StatusBar: TStatusBar
Left = 0
Top = 538
Width = 644
Height = 19
Panels = <
item
Alignment = taRightJustify
Text = '0%'
Width = 40
end
item
Text = 'Page'
Width = 50
end>
SimplePanel = False
end
object ToolBar1: TToolBar
Left = 0
Top = 0
Width = 644
AutoSize = True
BorderWidth = 2
Flat = True
Images = Images
TabOrder = 1
object ToolButton1: TToolButton
Left = 0
Top = 0
Width = 8
Caption = 'ToolButton1'
ImageIndex = 12
Style = tbsDivider
end
object ZoomFit: TToolButton
Left = 8
Top = 0
Hint = 'Zoom to fit'
Caption = 'ZoomFit'
Grouped = True
ImageIndex = 0
Style = tbsCheck
OnClick = ZoomToFitClick
end
object Zoom100: TToolButton
Left = 31
Top = 0
Hint = '100%'
Caption = 'Zoom100'
Grouped = True
ImageIndex = 1
Style = tbsCheck
OnClick = ZoomTo100Click
end
object ZoomToWidth: TToolButton
Left = 54
Top = 0
Hint = 'Zoom to width'
Caption = 'ZoomToWidth'
Grouped = True
ImageIndex = 2
Style = tbsCheck
OnClick = ZoomToWidthClick
end
object Separator1: TToolButton
Left = 77
Top = 0
Width = 8
Caption = 'Separator1'
ImageIndex = 3
Style = tbsDivider
end
object FirstPage: TToolButton
Left = 85
Top = 0
Hint = 'First page'
Caption = 'FirstPage'
ImageIndex = 3
OnClick = FirstPageClick
end
object PreviousPage: TToolButton
Left = 108
Top = 0
Hint = 'Previous page'
Caption = 'PreviousPage'
ImageIndex = 4
OnClick = PrevPageClick
end
object ToolButton2: TToolButton
Left = 131
Top = 0
Hint = 'Next page'
Caption = 'NextPage'
ImageIndex = 5
OnClick = NextPageClick
end
object LastPage: TToolButton
Left = 154
Top = 0
Hint = 'Last page'
Caption = 'LastPage'
ImageIndex = 6
OnClick = LastPageClick
end
object Separator2: TToolButton
Left = 177
Top = 0
Width = 8
Caption = 'Separator2'
ImageIndex = 7
Style = tbsDivider
end
object PrintSetup: TToolButton
Left = 185
Top = 0
Hint = 'Printer setup'
Caption = 'PrintSetup'
Enabled = False
ImageIndex = 7
OnClick = PrintSetupClick
end
object Print: TToolButton
Left = 208
Top = 0
Hint = 'Print'
Caption = 'Print'
Enabled = False
ImageIndex = 8
OnClick = PrintClick
end
object Separator3: TToolButton
Left = 231
Top = 0
Width = 8
Caption = 'Separator3'
ImageIndex = 9
Style = tbsDivider
end
object SaveReport: TToolButton
Left = 239
Top = 0
Hint = 'Save Report'
Caption = 'PrintSetup'
ImageIndex = 10
OnClick = SaveClick
end
object LoadReport: TToolButton
Left = 262
Top = 0
Hint = 'Load Report'
Caption = 'Print'
ImageIndex = 9
OnClick = LoadClick
end
object Separator4: TToolButton
Left = 285
Top = 0
Width = 8
Caption = 'Separator4'
ImageIndex = 11
Style = tbsDivider
end
object ExitButton: TSpeedButton
Left = 293
Top = 0
Width = 40
Height = 22
Caption = '&Close'
OnClick = ExitClick
end
end
object QRPreview: TQRPreview
Left = 0
Top = 32
Width = 644
Height = 506
HorzScrollBar.Tracking = True
VertScrollBar.Tracking = True
Align = alClient
TabOrder = 2
OnPageAvailable = QRPreviewPageAvailable
OnProgressUpdate = QRPreviewProgressUpdate
PageNumber = 1
Zoom = 100
end
object Images: TImageList
Left = 54
Top = 42
Bitmap = {
363000
...
end
end
из QuickRpt.dcu
Много текста, но вдруг сможете подсказать
TQuickReport (2014-12-14 18:00:00) [16]Германн © (14.12.14 17:43) [9]
В чужой программе или в своей?
В моей программе на QuickRep
Германн (2014-12-14 17:43:00) [17]
> Кнопки по которым хочу программно кликнуть типа TToolButton,
> находятся на QuickRep
В чужой программе или в своей?
brother (2014-12-14 17:13:00) [18]что именно не получилось по примерам ссылки?
TQuickReport (2014-12-14 17:07:00) [19]> brother © (14.12.14 16:12) [5]
> зы. загуглил за 1 минуту...
К сожалению не помогло.
Кнопки по которым хочу программно кликнуть типа TToolButton, находятся на QuickRep
TQuickReport (2014-12-14 17:07:00) [20]> brother © (14.12.14 16:12) [5]
> зы. загуглил за 1 минуту...
К сожалению не помогло.
Кнопки по которым хочу программно кликнуть типа TToolButton, находятся на QuickRep