The ShowMessage event, occurs when the thumbnail control is about to show a message to the user. This allows the programmer to override these with custom messages.
message
default message as acThumbnailCtrlShowMsgConsts.
showDefault
Setting this parameter to True (1) show the default message
Public Class Form1
Friend WithEvents AxPDFCreactiveX1 As AxACPDFCREACTIVEX.AxPDFCreactiveX = New AxACPDFCREACTIVEX.AxPDFCreactiveX()
Friend WithEvents AxacThumbnailCtrl1 As AxACPDFCREXTLib.AxacThumbnailCtrl = New AxACPDFCREXTLib.AxacThumbnailCtrl()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' Form1
Me.Size = New System.Drawing.Size(850, 550)
' AxPDFCreactiveX1
AxPDFCreactiveX1.Parent = Me
AxPDFCreactiveX1.Enabled = True
AxPDFCreactiveX1.Location = New System.Drawing.Point(30, 60)
AxPDFCreactiveX1.Name = "AxPDFCreactiveX1"
AxPDFCreactiveX1.Size = New System.Drawing.Size(470, 440)
AxPDFCreactiveX1.TabIndex = 0
' AxacBookmarkCtrl1
AxacThumbnailCtrl1.Parent = Me
AxacThumbnailCtrl1.Enabled = True
AxacThumbnailCtrl1.Location = New System.Drawing.Point(530, 60)
AxacThumbnailCtrl1.Name = "AxacBookmarkCtrl1"
AxacThumbnailCtrl1.Size = New System.Drawing.Size(270, 440)
AxacThumbnailCtrl1.TabIndex = 1
' Configuration
AxacThumbnailCtrl1.BackColor = Color.AliceBlue
' Initialize Bookmark
AxacThumbnailCtrl1.Initialize(AxPDFCreactiveX1.GetOcx())
' Constants for Activation codes
Const strLicenseTo As String = "Amyuni PDF Creator Evaluation"
Const strActivationCode As String = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC"
' Set license key
AxPDFCreactiveX1.SetLicenseKey(strLicenseTo, strActivationCode)
' Create a 5 page with a text object And Page BookMark
Dim pageCount As Integer = 5
For i = 1 To pageCount
' set current page
AxPDFCreactiveX1.CurrentPage = i
' Create a Text in the current Page
AxPDFCreactiveX1.CreateObject(ACPDFCREACTIVEX.ObjectTypeConstants.acObjectTypeText, "Text" + i.ToString)
Dim oText As ACPDFCREACTIVEX.IacObject = AxPDFCreactiveX1.GetObjectByName("Text" + i.ToString)
oText("Left") = 1000
oText("Right") = 5000
oText("Top") = 0
oText("Bottom") = 4000
oText("BorderColor") = &HFF00FF
oText("BorderWidth") = ACPDFCREACTIVEX.acBorderWidth.acBorderWidthDouble
oText("Text") = "Amyuni Technologies " + i.ToString
' Add page
AxPDFCreactiveX1.AddPage(i)
Next
End Sub
Private Sub AxacThumbnailCtrl1_ThumbActivated(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEvent) Handles AxacThumbnailCtrl1.ThumbActivated
MessageBox.Show("The thumbnail was activated")
End Sub
Private Sub AxacThumbnailCtrl1_DeleteSelectedPages(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEvent) Handles AxacThumbnailCtrl1.DeleteSelectedPages
If MessageBox.Show("Are you sure?", "", MessageBoxButtons.YesNoCancel) = DialogResult.Yes Then
e.continue = 1
Else
e.continue = 0
End If
End Sub
Private Sub AxacThumbnailCtrl1_ThumbSelected(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEvent) Handles AxacThumbnailCtrl1.ThumbSelected
Dim pages As Integer() = AxacThumbnailCtrl1.SelectedPages
Dim display As String = String.Empty
For i = 0 To pages.Length - 1
If i = 0 Then
display = display + pages(i).ToString()
Else
display = display + "," + pages(i).ToString()
End If
Next
MessageBox.Show(display)
End Sub
Private Sub AxacThumbnailCtrl1_ContextSensitiveMenu(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEvent) Handles AxacThumbnailCtrl1.ContextSensitiveMenu
MessageBox.Show("The contextual menu was selected")
End Sub
Private Sub AxacThumbnailCtrl1_ShowMessage(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEvent) Handles AxacThumbnailCtrl1.ShowMessage
Select Case e.message
Case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_NonCntForbidden
MessageBox.Show("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages.")
e.showDefault = 0
Case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_DelAllForbidden
MessageBox.Show("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain")
e.showDefault = 0
Case Else
e.showDefault = 1
End Select
End Sub
End Class
public partial class Form1 : Form
{
public AxACPDFCREACTIVEX.AxPDFCreactiveX axPDFCreactiveX1 = new AxACPDFCREACTIVEX.AxPDFCreactiveX();
public AxACPDFCREXTLib.AxacThumbnailCtrl AxacThumbnailCtrl1 = new AxACPDFCREXTLib.AxacThumbnailCtrl();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Form1
this.Size = new System.Drawing.Size(850, 550);
// axPDFCreactiveX1
axPDFCreactiveX1.Parent = this;
axPDFCreactiveX1.Enabled = true;
axPDFCreactiveX1.Location = new System.Drawing.Point(30, 60);
axPDFCreactiveX1.Name = "axPDFCreactiveX1";
axPDFCreactiveX1.Size = new System.Drawing.Size(470, 440);
axPDFCreactiveX1.TabIndex = 0;
// axacBookmarkCtrl1
AxacThumbnailCtrl1.Parent = this;
AxacThumbnailCtrl1.Enabled = true;
AxacThumbnailCtrl1.Location = new System.Drawing.Point(530, 60);
AxacThumbnailCtrl1.Name = "axacBookmarkCtrl1";
AxacThumbnailCtrl1.Size = new System.Drawing.Size(270, 440);
AxacThumbnailCtrl1.TabIndex = 1;
// events definition
AxacThumbnailCtrl1.ThumbActivated += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEventHandler(AxacThumbnailCtrl1_ThumbActivated);
AxacThumbnailCtrl1.DeleteSelectedPages += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEventHandler(AxacThumbnailCtrl1_DeleteSelectedPages);
AxacThumbnailCtrl1.ThumbSelected += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEventHandler(AxacThumbnailCtrl1_ThumbSelected);
AxacThumbnailCtrl1.ContextSensitiveMenu += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEventHandler(this.AxacThumbnailCtrl1_ContextSensitiveMenu);
AxacThumbnailCtrl1.ShowMessage += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEventHandler(AxacThumbnailCtrl1_ShowMessage);
// Initialize Bookmark
AxacThumbnailCtrl1.Initialize(axPDFCreactiveX1.GetOcx());
// Configuration
AxacThumbnailCtrl1.BackColor = Color.AliceBlue;
// Constants for Activation codes
const string strLicenseTo = "Amyuni PDF Creator Evaluation";
const string strActivationCode = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC";
// Initializing PDFCreativeX Object
ACPDFCREACTIVEX.PDFCreactiveX pdf = new ACPDFCREACTIVEX.PDFCreactiveX();
// Set license key
axPDFCreactiveX1.SetLicenseKey(strLicenseTo, strActivationCode);
// Create a 5 page with a text object and Page BookMark
int pageCount = 5;
for (int i = 1; i <= pageCount; i++)
{
// Set the current page
axPDFCreactiveX1.CurrentPage = i;
// Create a Text in the current Page
axPDFCreactiveX1.CreateObject(ACPDFCREACTIVEX.ObjectTypeConstants.acObjectTypeText, "Text" + i.ToString());
ACPDFCREACTIVEX.IacObject oText = axPDFCreactiveX1.GetObjectByName("Text" + i.ToString());
oText["Left"] = 1000;
oText["Right"] = 5000;
oText["Top"] = 0;
oText["Bottom"] = 4000;
oText["BorderColor"] = 0xFF00FF;
oText["BorderWidth"] = ACPDFCREACTIVEX.acBorderWidth.acBorderWidthDouble;
oText["Text"] = "Amyuni Technologies " + i.ToString();
// Add page
axPDFCreactiveX1.AddPage(i);
}
}
private void AxacThumbnailCtrl1_ThumbActivated(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEvent e)
{
MessageBox.Show("The thumbnail was activated");
}
private void AxacThumbnailCtrl1_DeleteSelectedPages(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEvent e)
{
if (MessageBox.Show("Are you sure?", "", MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
{
e.@continue = 1;
}
else
{
e.@continue = 0;
}
}
private void AxacThumbnailCtrl1_ThumbSelected(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEvent e)
{
int[] pages = (int[])AxacThumbnailCtrl1.SelectedPages;
string display = String.Empty;
for (int i = 0; i < pages.Length; i++)
{
if (i == 0)
{
display = display + pages[i].ToString();
}
else
{
display = display + "," + pages[i].ToString();
}
}
MessageBox.Show(display);
}
private void AxacThumbnailCtrl1_ContextSensitiveMenu(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEvent e)
{
MessageBox.Show("The contextual menu was selected");
}
private void AxacThumbnailCtrl1_ShowMessage(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEvent e)
{
switch (e.message)
{
case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_NonCntForbidden:
MessageBox.Show("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages.");
e.showDefault = 0;
break;
case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_DelAllForbidden:
MessageBox.Show("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain");
e.showDefault = 0;
break;
default:
e.showDefault = 1;
break;
}
}
}
void CThumbnails_CppDlg::OnBnClickedOk()
{
IPDFCreactiveXPtr m_PDF;
IacThumbnailCtrlPtr m_THUMB;
m_PDF = GetDlgItem(IDC_PDFCREACTIVEX1)->GetControlUnknown();
m_THUMB = GetDlgItem(IDC_ACTHUMBNAILCTRL1)->GetControlUnknown();
// Initialize Bookmark
m_THUMB->Initialize(m_PDF);
// Configuration
m_THUMB->BackColor = 0xF0F8FF;
// Constants for Activation codes
const bstr_t strLicenseTo = "Amyuni PDF Creator Evaluation";
const bstr_t strActivationCode = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC";
// Set license key
m_pdf->SetLicenseKey(strLicenseTo, strActivationCode);
// Create a 5 page with a text object and Page BookMark
int pageCount = 5;
for (int i = 1; i <= pageCount; i++)
{
// Set the current page
m_pdf->CurrentPage = i;
// Set-up variables for attributes
_variant_t varAttribute;
varAttribute.vt = VT_I4; // integers
// Create a Text in the current Page
m_pdf->CreateObject(acObjectTypeText, "Text" + bstr_t(i));
IacObjectPtr oText = m_pdf->GetObjectByName("Text" + bstr_t(i));
oText->Attribute["Left"] = 1000;
oText->Attribute["Right"] = 5000;
oText->Attribute["Top"] = 0;
oText->Attribute["Bottom"] = 4000;
varAttribute.lVal = 0xFF00FF;
oText->Attribute["BorderColor"] = varAttribute;
varAttribute.lVal = acBorderWidthDouble;
oText->Attribute["BorderWidth"] = varAttribute;
oText->Attribute["Text"] = "Amyuni Technologies" + bstr_t(i);
// Add page
m_pdf->AddPage(i);
}
}
BEGIN_EVENTSINK_MAP(CThumbnails_CppDlg, CDialogEx)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 1, CThumbnails_CppDlg::ThumbActivatedActhumbnailctrl1, VTS_I4 VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 2, CThumbnails_CppDlg::DeleteSelectedPagesActhumbnailctrl1, VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 3, CThumbnails_CppDlg::ThumbSelectedActhumbnailctrl1, VTS_I4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 6, CThumbnails_CppDlg::ContextSensitiveMenuActhumbnailctrl1, VTS_I4 VTS_I4 VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 4, CThumbnails_CppDlg::ShowMessageActhumbnailctrl1, VTS_I4 VTS_PI4)
END_EVENTSINK_MAP()
void CThumbnails_CppDlg::ThumbActivatedActhumbnailctrl1(long page, long* Continue)
{
MessageBox(_T("The thumbnail was activated"), _T(""), MB_OK);
}
void CThumbnails_CppDlg::DeleteSelectedPagesActhumbnailctrl1(long* Continue)
{
if (MessageBox(_T("Are you sure?"), _T(""), MB_YESNO) == IDYES)
{
*Continue = 1l;
}
else
{
*Continue = 0l;
}
}
void CThumbnails_CppDlg::ThumbSelectedActhumbnailctrl1(long page)
{
MessageBox(bstr_t(page), _T(""), MB_OK);
}
void CThumbnails_CppDlg::ContextSensitiveMenuActhumbnailctrl1(long xPos, long yPos, long* Continue)
{
MessageBox(_T("The contextual menu was selected"), _T(""), MB_OK);
}
void CThumbnails_CppDlg::ShowMessageActhumbnailctrl1(long message, long* ShowDefault)
{
switch (message)
{
case acThumbnailCtrlShowMsgConsts_NonCntForbidden:
MessageBox(_T("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages."), _T(""), MB_OK);
*ShowDefault = 0l;
break;
case acThumbnailCtrlShowMsgConsts_DelAllForbidden:
MessageBox(_T("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain"), _T(""), MB_OK);
*ShowDefault = 0l;
break;
default:
*ShowDefault = 1l;
break;
}
}