Недавно вставил в одну свою прогу забавную фишечку MSAgent, думаю, что вы все знаете эту занудную скрепочку из MS Office,
хоть она и занудная, но у неё есть одно несомненное достоинство - её можно отключить :) Посмотрим на дело с другой стороны,
если человек впервые запускает вашу прогу, то ему будет гораздо проще и уютнее, если маленький смешной человечек расскажет,
что и как здесь можно делать, ну а потом его легко отключить...
Вставить же этого чудика проще простого, для этого вам необходимо установить на свой комп компонент с агентом,
если вы хотите, чтобы агент разговаривал по русски, то установите ещё и это дополнение.
Если вы пишете программу на Visual Basic, то здесь вы найдете описание вставки в ваш проект этого агента, а если на Visual C++, то
добавьте в свой проект этот компонет (точнее классы для управления им) в меню Project->Add To Project->Components and Controls.
Затем напишите примерно следующий код:
bool CMainFrame::LoadMSAgent()
{
try
{
COleVariant vEmpty;
m_MSAgent = new CAgentCtlEx;
m_MSCharAgent = new CAgentCtlCharacterEx;
m_MSAgent->Create("",WS_CHILD,CRect(10,10,100,100),(CWnd*)this,111);
CAgentCtlCharacters MSChar = m_MSAgent->GetCharacters();
CString s = "C:\\WINNT\\MSAgent\\merlin.acs";
VARIANT var;
var.vt = VT_BSTR;
var.bstrVal = s.AllocSysString();
MSChar.Load("CharacterID",var);
//устанавливает русский язык, чтобы агент умел говорить по русски...
m_MSCharAgent->SetLanguageID(0x0419);
*m_MSCharAgent = MSChar.Character("CharacterID");
var.vt = VT_I2;
var.iVal = 0;
m_MSCharAgent->MoveTo(200,200,var);
m_MSCharAgent->Show(var);
m_MSCharAgent->Play("Announce");
var.vt = VT_I2;
var.iVal = 500;
m_MSCharAgent->MoveTo(30,10,var);
m_MSCharAgent->Play("GestureRight");
s = "Привет,\\Pau=400\\для регистрации в системе нажмите эту кнопку!";
var.vt = VT_BSTR;
var.bstrVal = s.AllocSysString();
m_MSCharAgent->Speak(var,vEmpty);
return true;
}
catch(...)
{
m_MerlinType = M_NONE;
return false;
}
}
В этом примере волшебник Мерлин появится на экране, протрубит в трубу (Announce) перелетит в верхний левый угол экрана и скажет:
"Привет,для регистрации в системе нажмите эту кнопку!"
Пример с агентом
Карабас
Редактор для создания собственных агентов
|