Fórum skin ou template ?? #287162

06/07/2005

0

Como q faz pra usar um skin diferente no meu projeto? é em arkivo .skn, eu ja tenhu ele, e mais uma coisa, como q faz pra qnd minimizar ir pro systray?? vlws



Título alterado por oTTo. Removido: ´´urgente´


Renatobohler

Renatobohler

Responder

Posts

06/07/2005

Edineidaniel

Renato,

Também esta com esse problema de colocar a aplicação no SysTray..

Tive que instalar um componente da palete RXLib (rxSysTray) que coloca um icone na Systray ai é só colocar o visible do form principal para false..

Att,
Edinei


Responder

Gostei + 0

07/07/2005

Renatobohler

mas e qnt ao skin?? ninguem sabe?
eu peguei aquele aplicativo q tem no site, mas la tem uns negocio assim:
ss := string;
ss := ´c:\mxskin21.skn´;

eu tento coloca isso, mas nao funfa d jeito nenhum


Responder

Gostei + 0

07/07/2005

Adriano Santos

Procure pela biblioteca de compoentes VclSkin, é muito boa.
E quanto ao esquema do aplicativo na bandeja, tem um esquema que manda pra bandeja sem precisar de componente...é meio embaçado porque tem que fazer no braço...vou ver se acho o exemplo aqui nos meus fontes e mando a unit completa.

FALOW


Responder

Gostei + 0

07/07/2005

Adriano Santos

Bom galera, achei o esquema aqui.

Não me façam muitas perguntas, pois o fonte aqui é ctrl+c e ctrl+v. :D

Você precisa declarar na uses do form a unit ShellApi e uma constante. Normalmente eu declaro minhas constantes logo abaixo do uses, mas fica a critério de cada um. Vejam.

const
  wm_IconMessage = wm_User;


Mais uma variável publica

NID : TNotifyIconData; // <- esta linha


No onCreate do Form vai todo o segredo para mandar para o Tray:

procedure TForm1.FormCreate(Sender: TObject);
begin
  nid.cbSize := sizeof(nid); // define o tamanho de Nid
  nid.wnd := Handle; // define que Nid pertence ao Form1.Handle
  nid.uID := 1; // código do ícone
  nid.uCallBAckMessage := wm_IconMessage;
  nid.hIcon := Form1.Icon.Handle; // define que o ícone a ser mostrado é o do Form1
  // obs.: quando se trata de uma propriedade do form em que estamos

  // trabalhando, podemos omitir o nome dele, por exemplo:
  // nid.hIcon := Icon.Handle; -> sem "Form1.", também está correto.
  nid.szTip := ´Exemplo de TrayIcon´+#13+´Teste segunda Linha´+13+´Que tal mais uma linha?´;
  // define o tamanho do Hint
  nid.uFlags := nif_Message or nif_Icon or nif_Tip; // especifica o que será modificado
  Shell_NotifyIcon (NIM_ADD, @nid); // envia mensagem ao Windows para atualizar o TrayIcon
end;


E depois para sair do Tray, coloque a instrução a seguir no onClose ou onDestroy do form.

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  nid.uFlags := 0;
  Shell_NotifyIcon (NIM_DELETE, @nid);
end;



É isso ai galera. Com isso seria possível até criar um componente falai?
Eu tenho o exemplo aqui, se alguém se interessar me manda email que eu envio, mas do jeito que está aqui funciona.

adriano@doiscliques.com


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar