Fórum Como adicionar um cursor em Object Inspector no Delphi??? #289917
28/07/2005
0
tipo, tem crAppStart, cdArrow, crCross etc.. como faço pra adicionar um cursor nessa lista???
é q eu fiz um cursor e queria incluir o meu lá...
Duolon
Curtir tópico
+ 0Posts
29/07/2005
Adriano Santos
Gostei + 0
29/07/2005
Duolon
E teria algum code q colocado no evento OnMouseOver do objeto q fizesse aparecer o meu cursor?
Gostei + 0
29/07/2005
Adriano Santos
crie uma constante desta forma
const crSeuCursor = 1; // Tem que ser um valor maior que 0 (zero)
no evento onMouseMove coloque
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Screen.Cursors [crSeuCursor] := LoadCursorFromFile (´c:\winnt\cursors\harrow.cur´); // O cursor pode ser dos tipos comum (*.cur) ou animado (*.ani) // Lembre-se: o arquivo tem que estar na mesma pasta do programa // ou digite o nome do caminho dele. end;
e no onCreate do form
Form1.Cursor := crSeuCursor;
Por aqui vc já vai ter uma ideia de como funciona.
Gostei + 0
29/07/2005
Duolon
const crSeuCursor = 1; // Tem que ser um valor maior que 0 (zero)
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Screen.Cursors [crSeuCursor] := LoadCursorFromFile (´c:\winnt\cursors\harrow.cur´); // O cursor pode ser dos tipos comum (*.cur) ou animado (*.ani) // Lembre-se: o arquivo tem que estar na mesma pasta do programa // ou digite o nome do caminho dele. end;
Form1.Cursor := crSeuCursor;
Fiz isso aí e na compilação ñ deu nenhum erro, porem na execução do programa quando passo o mouse sobre o botão o cursor fica o mesmo... :(
Gostei + 0
29/07/2005
Duolon
Gostei + 0
29/07/2005
Duolon
Gostei + 0
29/07/2005
Adriano Santos
Screen.Cursors [crSeuCursor] := LoadCursorFromFile (´c:\winnt\cursors\harrow.cur´);
O diretório e nome do arquivo do cursor existam.
Gostei + 0
29/07/2005
Duolon
Screen.Cursors [crSeuCursor] := LoadCursorFromFile (´c:\winnt\cursors\harrow.cur´);
Compilei e fui executar o arquivo em outra máquina, só q essa maquina ñ tinha o cursor q eu fiz... aí ñ apareceu o cursor..., teria como tá integrando esse cursor ao arquivo compilado? e com oq eu faço???
Gostei + 0
30/07/2005
Michael
Basta vc colocar seu cursor dentro de um [b:35267a64ae]arquivo de recurso [/b:35267a64ae](RES) e incluí-lo no seu código fonte com a diretiva abaixo:
{$R NomeDoArquivo.RES}.Vc pode criar o arquivo de recurso com o ImageEditor, que vem com o Delphi.
Se quiser ser criar uma solução profissional, pode criar um novo componente, derivado do que vc quer alterar o cursor, e criar uma nova propriedade, digamos [b:35267a64ae]CursorFileName[/b:35267a64ae], e fazer com q o próprio componente se encarregue de mudar o ponteiro.
[]´s
Gostei + 0
01/08/2005
Duolon
Gostei + 0
02/08/2005
Michael
Desculpe a pergunta, mas vc colocou exatamente assim na unti do form: [b:e8c5fbab24]{$R NomeDoArquivo.RES}[/b:e8c5fbab24] :shock:
Bom, também é necessário carregar o cursor com a função [b:e8c5fbab24]LoadCursor[/b:e8c5fbab24]. Não me lembro de cabeça os parâmetros dela. Procure no help do Delphi. Esta função carrega um cursor de dentro de um arquivo de recurso. Acho q esqueci de mencionar isso acima :oops:
[]´s
Gostei + 0
02/08/2005
Duolon
heheheh, ñ eu troquei o [b:3eaa9089c9]NomeDoArquivo[/b:3eaa9089c9] pelo nome do meu arquivo .RES
então deve ser por isso q ñ estava carregando o cursor..., dei uma procurada mais ñ axei nada, como q ficariam os parametros dessa função q vc citou???
Gostei + 0
03/08/2005
Duolon
Gostei + 0
03/08/2005
Michael
Extraído do help do Delphi:
[i:9b54c49815][size=14:9b54c49815][b:9b54c49815]LoadCursor Function[/b:9b54c49815][/size:9b54c49815]
The LoadCursor function loads the specified cursor resource from the executable (.EXE) file associated with an application instance.
Note This function has been superseded by the LoadImage function.
[b:9b54c49815]Syntax[/b:9b54c49815]
HCURSOR LoadCursor( HINSTANCE hInstance,
LPCTSTR lpCursorName
);
[b:9b54c49815]Parameters[/b:9b54c49815]
[b:9b54c49815]hInstance[/b:9b54c49815]
[in] Handle to an instance of the module whose executable file contains the cursor to be loaded.
[b:9b54c49815]lpCursorName[/b:9b54c49815]
[in] Pointer to a null-terminated string that contains the name of the cursor resource to be loaded. Alternatively, this parameter can consist of the resource identifier in the low-order word and zero in the high-order word. The MAKEINTRESOURCE macro can also be used to create this value. To use one of the predefined cursors, the application must set the hInstance parameter to NULL and the lpCursorName parameter to one the following values:
[b:9b54c49815]IDC_APPSTARTING[/b:9b54c49815]
Standard arrow and small hourglass
[b:9b54c49815]IDC_ARROW[/b:9b54c49815]
Standard arrow
[b:9b54c49815]IDC_CROSS[/b:9b54c49815]
Crosshair
[b:9b54c49815]IDC_HAND[/b:9b54c49815]
Windows 98/Me, Windows 2000/XP: Hand
[b:9b54c49815]IDC_HELP[/b:9b54c49815]
Arrow and question mark
[b:9b54c49815]IDC_IBEAM[/b:9b54c49815]
I-beam
[b:9b54c49815]IDC_ICON[/b:9b54c49815]
Obsolete for applications marked version 4.0 or later.
[b:9b54c49815]IDC_NO[/b:9b54c49815]
Slashed circle
[b:9b54c49815]IDC_SIZE[/b:9b54c49815]
Obsolete for applications marked version 4.0 or later. Use IDC_SIZEALL.
[b:9b54c49815]IDC_SIZEALL[/b:9b54c49815]
Four-pointed arrow pointing north, south, east, and west
[b:9b54c49815]IDC_SIZENESW[/b:9b54c49815]
Double-pointed arrow pointing northeast and southwest
[b:9b54c49815]IDC_SIZENS[/b:9b54c49815]
Double-pointed arrow pointing north and south
[b:9b54c49815]IDC_SIZENWSE[/b:9b54c49815]
Double-pointed arrow pointing northwest and southeast
[b:9b54c49815]IDC_SIZEWE[/b:9b54c49815]
Double-pointed arrow pointing west and east
[b:9b54c49815]IDC_UPARROW[/b:9b54c49815]
Vertical arrow
[b:9b54c49815]IDC_WAIT[/b:9b54c49815]
Hourglass
[b:9b54c49815]Return Value[/b:9b54c49815]
If the function succeeds, the return value is the handle to the newly loaded cursor.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
[b:9b54c49815]Remarks[/b:9b54c49815]
The LoadCursor function loads the cursor resource only if it has not been loaded; otherwise, it retrieves the handle to the existing resource. This function returns a valid cursor handle only if the lpCursorName parameter is a pointer to a cursor resource. If lpCursorName is a pointer to any type of resource other than a cursor (such as an icon), the return value is not NULL, even though it is not a valid cursor handle.
The LoadCursor function searches the cursor resource most appropriate for the cursor for the current display device. The cursor resource can be a color or monochrome bitmap.
[b:9b54c49815]Windows 95/98/Me:[/b:9b54c49815] LoadCursorW is supported by the Microsoft® Layer for Unicode (MSLU). To use this, you must add certain files to your application, as outlined in Microsoft Layer for Unicode on Windows 95/98/Me Systems.[/i:9b54c49815]
[]´s
Gostei + 0
03/08/2005
Duolon
cara, ñ entendi direito... é q num manjo quase nada em dephi... como q fica o código e em q parte eu coloco ele?
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)