
Chcę aby po kliknięciu pozycji w menu pojawił się odpowiedni wskaźnik myszy
void __fastcall TForm::MenuItem1Click(TObject *Sender)
{
::SetCursor(LoadCursor(NULL, IDC_HELP)); /* kursor 'wybór pomocy' zdefiniowany dla systemu przez użytkownika */
// jakieÅ› polecenie menu
Screen->Cursor = crDefault;
}


//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
HelpFile = ExtractFilePath(ParamStr(0)) + "Help\\pomoc.hlp";
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
bool __fastcall TForm1::FormHelp(WORD Command, int Data, bool &CallHelp)
{
CallHelp = false;
if(WinHelp(this->Handle, HelpFile.c_str(), HELP_CONTEXTPOPUP, Data))
return true;
return false;
}
//---------------------------------------------------------------------------

Cyfrowy Baron napisał(a):Formularz wyświetla ikonkę znaku zapytania tylko gdy jego właściwość BorderStyle jest ustawiona na bsDialog. To niestety oznacza, że nie możesz użyć tego w TMainMenu.

wargo napisał(a): że kiedy wybiorę pozycję np. "Co to jest?" (przykład: MS Word) to włączy się mi to samo co po naciśnięciu "?"

Witold napisał(a):a ustawiełeś właściwość HelpContext?

WinHelp(this->Handle, HelpFile.c_str(), HELP_CONTEXTPOPUP, Data)//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
HelpFile = ExtractFilePath(ParamStr(0)) + "Help\\pomoc.hlp";
}
//---------------------------------------------------------------------------
bool __fastcall TForm1::FormHelp(WORD Command, int Data, bool &CallHelp)
{
CallHelp = false;
if(WinHelp(this->Handle, HelpFile.c_str(), HELP_CONTEXTPOPUP, Data))
return true;
return false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Menu1Click(TObject *Sender) // Polecenie PopupMenu "Co to jest?"
{
POINT p;
GetCursorPos(&p);
HWND hWnd = WindowFromPoint(p);
int Data = reinterpret_cast<TControl *>(FindControl(hWnd))->HelpContext;
bool CallHelp;
FormHelp(NULL, Data, CallHelp);
}
//---------------------------------------------------------------------------



wargo napisał(a):Odpowiedź "a"!
void __fastcall TForm1::MenuItem_UaktywnijHelpClick(TObject *Sender)
{
SendMessage(Handle,WM_SYSCOMMAND,SC_CONTEXTHELP,0);
}

//---------------------------------------------------------------------------
void __fastcall TForm1::Menu1Click(TObject *Sender) // Polecenie PopupMenu "Co to jest?"
{
HelpFile = ExtractFilePath(ParamStr(0)) + "Help\\pomoc.hlp";
WinHelp(this->Handle, HelpFile.c_str(), HELP_CONTEXTPOPUP, 1);
}
//---------------------------------------------------------------------------



Powrót do Ogólne problemy z programowaniem
Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 3 gości