Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Aнимированный курсор мыши из *.ani файла, загружается … и не анимируется (( 
:(
    Опции темы
cyberstream
Дата 18.11.2010, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 7.9.2006

Репутация: 2
Всего: 4



Здравствуйте, уважаемые!
Button1Click меняет системный курсор (windows wide), Button2Click возвращает к исходному.
Загружаемый курсор отображается статичным. Как его грузить, чтоб анимировался? 
С++ Builder 6 вообще оное может? 
Код

#define OEMRESOURCE
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//===========================================================================*/
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//===========================================================================*/
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{  }//=======================================================================*/

AnsiString GetEnvVar(AnsiString envVar);

void __fastcall TForm1::Button1Click(TObject *Sender)
{
//HANDLE hl = LoadImage(0, (GetEnvVar("windir")+"\\Cursors\\appstart.ani").c_str(), IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE | LR_LOADFROMFILE); //так тоже пробовал
HANDLE hl = LoadCursorFromFile((GetEnvVar("windir")+"\\Cursors\\appstart.ani").c_str());
if (SetSystemCursor(CopyCursor(hl), OCR_NORMAL)==0)
    MessageBox(NULL, SysErrorMessage(GetLastError()).c_str(), IntToHex((int)GetLastError(),8).c_str(), MB_OK);
}//===========================================================================*/

void __fastcall TForm1::Button2Click(TObject *Sender)
{    SystemParametersInfo    //SPI_SETCURSORS Reloads the system cursors. Set the uiParam parameter to zero and the pvParam parameter to NULL
    (     SPI_SETCURSORS    // UINT uiAction,
         ,0                 // UINT uiParam,
         ,NULL              // PVOID pvParam,
         ,0                 // UINT fWinIni
    );
}//===========================================================================*/

AnsiString GetEnvVar(AnsiString envVar)
{ int Len = GetEnvironmentVariable(envVar.c_str(), NULL, 0);
  AnsiString Result;
  if (Len > 0)
  {
    Result.SetLength(Len - 1);
    GetEnvironmentVariable(envVar.c_str(), Result.c_str(), Len);
  }
  return Result;
}//===========================================================================*/

--------------------
Не знаешь кого спросить? - Спроси google!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0355 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.