30. august 2003 - 21:03Der er
10 kommentarer og 1 løsning
Hvordan installer
Jeg har en Delphi 4. Jeg har samlet mange gode ? freeware Objekter ? ting man kan sætte ind i sin delphi. Men det er endnu aldrig lykkes mig at installerer en eneste af dem. Der kommer altid fejl , når jeg klikker på installer og ja til at tilføje den til "etllerandet". Så mangler den ditten og så mangler den datten. Hvad gør jeg forkert er der en fidus ? VH SpørgerJørgen
Det er fordi du åbner de forkerte dpk-filer. To spørgsmål: 1) Hvilken Delphi-version bruger du? 2) Hvilke komponenter er det du ikke kan installere (evt. website)?
Det er en Delphi 4.0 Clint/server suite. Det andet spørgsmål, det ligger det noget tungt med. Jeg har jo smidt nogle af dem ud og andre har jeg opgivet og noget af det er slettet og så videre. En DAO eller sådan noget havde jeg planer om. Den kom også på men krævede noget DAO Microsoft det fik jeg installeret men den forsatte med at give fejl om at den ikke var der. Jeg kan tænke mig at der er fordi det er en dansk Win og den "driver" kun kan se en UK. Men jeg ved det ikke. Beklager. VH SpørgerJørgen
I går hentede jeg sådan en her men hvad skal den bruges til ? Hvor skal den installeres ? Når engang jeg bliver rig ??? vil jeg have en Delphi 7.0 Proff VH SpørgerJørgen
{*********************************************************** * Label3dBorder version 1.0 - 32 bit * * Copyright (C) April 22, 1997 Steen Hjelmstrand * * * *********************************************************** * Label with possibility of setting 5 different kinds * * of 3-dimensional borders and an option of horisontal * * alignment of the caption. * * * * Border: * * Set BorderStyle"-property in the ObjectInspector. * * * * Horisontal alignment of caption: * * Set "HorisontalAlign"-property in the ObjectInspector. * * * * NOTICE: * * 1) If you set the horisontal alignment to "haCenter" or * * "haBottom" then wordwrapping is not possible. If Wordwrap * * is set to "True" the setting will be ignored. * * * * 2) This label has no "AutoSize"-property. I never use the * * "AutoSize"-property myself, as I don't find it reliable, * * so I didn't want to waste my time implementing it. * * Sorry about that, if you happen to be an Autosize- * * fanatic :-) * * * * If you have comments or find bugs please email me: * * stone@image.dk * *************************************************************}
procedure TLabel3dBorder.Paint; const Alignments: array[TAlignment] of Word = (DT_LEFT, DT_RIGHT, DT_CENTER); WordWraps: array[Boolean] of Word = (0, DT_WORDBREAK); HorAlign: array[THorisontalAlign] of Word = (0, DT_VCENTER or DT_SINGLELINE, DT_BOTTOM or DT_SINGLELINE); var Rect: TRect; begin with Canvas do begin if not Transparent then begin Brush.Color := Self.Color; Brush.Style := bsSolid; FillRect(ClientRect); end; Brush.Style := bsClear; Rect := ClientRect; case Ord(FBorderStyle) of 0:with Rect do InflateRect(Rect, -2, -2); 1:begin Frame3D(Canvas, Rect, clBtnShadow, clBtnHighlight, 1); with Rect do InflateRect(Rect, -1, -1); end; 2:begin Frame3D(Canvas, Rect, clBlack, clBtnHighlight, 1); with Rect do InflateRect(Rect, -1, -1); end; 3:begin Frame3D(Canvas, Rect, clBtnShadow, clBtnHighlight, 1); Frame3D(Canvas, Rect, clBlack, clBtnFace, 1); end; 4:begin Frame3D(Canvas, Rect, clBtnShadow, clBtnHighlight, 1); Frame3D(Canvas, Rect, clBtnHighlight, clBtnShadow, 1); end; 5:begin Frame3D(Canvas, Rect, clBtnHighlight, clBtnShadow, 1); Frame3D(Canvas, Rect, clBtnShadow, clBtnHighlight, 1); end; end; with Rect do InflateRect(Rect, -1, -1); DoDrawText(Rect, DT_EXPANDTABS or WordWraps[WordWrap] or Alignments[Alignment] or HorAlign[FHorisontalAlign]); end; end;
procedure TLabel3dBorder.DoDrawText(var Rect: TRect; Flags: Word); var Text: string; begin Text := GetLabelText; if (Flags and DT_CALCRECT <> 0) and ((Text = '') or ShowAccelChar and (Text[1] = '&') and (Text[2] = #0)) then Text := Text + ' '; if not ShowAccelChar then Flags := Flags or DT_NOPREFIX; Canvas.Font := Font; if not Enabled then Canvas.Font.Color := clGrayText; DrawText(Canvas.Handle, PChar(Text), Length(Text), Rect, Flags); end;
procedure TLabel3dBorder.SetBorderStyle(Value: TBorderStyle); begin if FBorderStyle <> Value then begin FBorderStyle := Value; Invalidate; end; end;
procedure TLabel3dBorder.SetHorisontalAlign(Value: THorisontalAlign); begin if FHorisontalAlign <> Value then begin FHorisontalAlign := Value; Invalidate; end; end;
procedure Register; begin RegisterComponents('Samples', [TLabel3DBorder]); end;
Du starter med at åbne uniten i Delphi og gemme den i en undermappe i din Delhi-mappe (lav evt. en mappe med navnet "Components"). Så går du op i menuen "Component", mens uniten stadigvæk er åbnet og aktuel (under det nye navn), og vælger "Install Component". Vælg nu fanebladet "Into new package". Feltet "Unit file name:" er udfyldt, hvis du har gjort det rigtigt. Du kopierer nu indholdet i "Unit file name:" (Ctrl+C) til "Package file name:", men laver filnavn og endelse om, så der i stedet for f.eks. "C:\Programmer\Borland\Delphi4\Components\Extra\ColorPanel.pas" kommer til at stå "C:\Programmer\Borland\Delphi4\Components\Extra\ColorPanel_D4.dpk". Tryk på OK. Sig "OK" til den boks der kommer. Når du lukker din nye package, så sig ja til at gemme.
Når du henter komponenter fra internettet, så vil der ofter følge .dpk-filer med. Der vil jeg anbefale at bruge dem, er der flere, så plejer der typisk at stå noget med "D4" bagerst i filnavnet. Åbn den rigtige i Delphi og tryk på "Install". Når du lukker pakken, så sig normalt nej til at gemme (med mindre du har ændret noget). Men generelt vil jeg anbefale dig altid at læse readme-filerne, der plejer at følge med komponenterne. Det er ikke helt usædvanligt at procedureren er anderledes for nogle komponenter :-)
GISP !!! så skulle jeg jo ikke have smidt dem ud.. ÅÅÅ nej ! VH SpørgerJørgen
Synes godt om
Ny brugerNybegynder
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.