Avatar billede azs Nybegynder
22. april 2001 - 15:06 Der er 10 kommentarer og
1 løsning

Komponent

jeg har fundet denne komponent på Torry.net !

http://www.torry.net/vcl/buttons/buttons/corelbtn.zip

Nu er det sådan at jeg gerne vil lave lidt om på den. Det har jeg også gjort !

Jeg har fjernet de to \"store\" kanter der kommer ved OnMouseEnter, og det er også det jeg vil.

Men så havde jeg tænkt mig at lave \"Caption\" på knappen \"clBlue\" når man flytter musen ind.

Det gør jeg med \"FCanvas.Font.Color := clBlue;\". Men så når man flytter musen ind bliver den stiplede linie gul og sort og teksten bliver ikke lavet om !

Er der nogen som kan hjælpe mig med at om på det så det virker !

Hvis i ikk forstår kan jeg godt sende mit eksemple.
Avatar billede azs Nybegynder
22. april 2001 - 15:11 #1
Der er en ting til !

Der kommer en lille hvid og sort farve i øverste højre hjørne og i nederste venstre hjørne.
Avatar billede nico26 Nybegynder
22. april 2001 - 16:05 #2
prøv at send det til brodersalsa@mail.dk
Avatar billede martinlind Nybegynder
22. april 2001 - 17:16 #3
    { Draw caption of button }
    with FCanvas do begin
      FCanvas.Font := Self.Font;
      Brush.Style := bsClear;
***** Font.Color := clNavy; <****************
      if Enabled or ((DrawItemStruct.itemState and ODS_DISABLED) = 0) then begin
        DrawText(Handle, PChar(Caption), Length(Caption), R, DT_CENTER or
        DT_VCENTER or DT_SINGLELINE);
      end else begin
        OffsetRect(R, 1, 1);
***** Font.Color := clBlue; <****************
        DrawText(Handle, PChar(Caption), Length(Caption), R, DT_CENTER or
        DT_VCENTER or DT_SINGLELINE);
        OffsetRect(R, -1, -1);
        Font.Color := clBtnShadow;
        DrawText(Handle, PChar(Caption), Length(Caption), R, DT_CENTER or
        DT_VCENTER or DT_SINGLELINE);
      end;
    end;


Ret kode til ovenstående så skulle den blive blå, skulle jeg mene.

/Martin
Avatar billede martinlind Nybegynder
22. april 2001 - 17:18 #4
det er taget fra drawitem proceduren der hvor jeg har mærket skal du sætte farve og være opmærksom på at canvas.font bliver sat lig med self.font.
Avatar billede azs Nybegynder
22. april 2001 - 19:31 #5
martinlind -> Det var nu ikke lige sådan !

Font farven skal skifte til clBlue når CMMouseEnter() procedure køres og så når CMMouseLeave() procedure køres skal font farven blive clBlack igen !
Avatar billede nico26 Nybegynder
22. april 2001 - 20:52 #6
Jeg har sendt rettelsen til dig

if FIsMouseOver then
  Font.Color := clBlue
else
  Font.Color := clWindowText
Avatar billede martinlind Nybegynder
23. april 2001 - 10:29 #7
Sorry, mig der sad og sov.
Avatar billede azs Nybegynder
24. april 2001 - 22:21 #8
nico22 -> Det ser meget fint ud men der er en lille fejl !

Når knappen er markeret bliver den stiplede linie gul og det skal den ikke være !

Avatar billede nico26 Nybegynder
24. april 2001 - 22:58 #9
jeg kigger på det
Avatar billede nico26 Nybegynder
26. april 2001 - 23:15 #10
kunne du bruge det???
Avatar billede azs Nybegynder
27. april 2001 - 11:01 #11
ja det kan det nico22
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester