Avatar billede koden12 Nybegynder
08. juli 2003 - 16:39 Der er 10 kommentarer og
1 løsning

Kender i den ?

$(DELPHI)\source\vcl;$(DELPHI)\source\rtl\win

kender i den linje ?
Er det sådan man laver CLASS ?
Man holder bare? Ctrl nede og peger med musen ?
Skal jeg så selv sætte nogle af de procedure ind som jeg kunne tænke mig virker.
Eller hva ?
VH
SJ
Avatar billede stone Forsker
08. juli 2003 - 18:46 #1
forstår ikke dit spørgsmål:

den linie du viser er en sti fra Tools/environment/library - browsing path
det er en sti som delphi bruger til at vide hvor de forskellige componenter/unit er
når du starter Delphi op, og når du skal benytte dem.
Avatar billede zerohero Nybegynder
08. juli 2003 - 19:27 #2
Som stone siger, er den linje, som du viser, kun i forbindelse med at kompileren ved hvilken sti på din harddisk den skal læse komponenter.
For at lave en klasse (Class) skal kan du gøre følgende:

type
  MinKlasse = class
    private
      //Dette er for interne varianter, procedurer og funktioner!
    public
      //Dette er for var, proced., og funk. som er tilgængelig for alle!
  end;

Læs eventuelt Delphi's hjælpe-fil fra bunden, hvordan man programmere og hvad det vil sige at benytte et OOP miljø. Den er rigtig god og vil kunne hjælpe dig langt hen ad vejen og har en masse gode eksempler!

Held og Lykke
ZeroHero
Avatar billede koden12 Nybegynder
08. juli 2003 - 20:53 #3
Jo jeg gik ind i Project /Option og ind under fanebaldet : Directoiers/Corditional og skrev den linje ind i Search Parh.
Hvis jeg så skirver :
memo1.clear;  og holder Ctrl nede mens jeg klikker med musen på clear så får jeg en lang liste op med blandt andet :

procedure TCustomEdit.Clear;
begin
  SetWindowText(Handle, '');
end;

Hvad bruges det til ?
Kan jeg så lave en class med en SetWindowsText ? eller hvad ?
VH
SJ
Avatar billede zerohero Nybegynder
08. juli 2003 - 22:22 #4
Jeg vil endnu engang klart anbefale dig at tage den tid det tager og læse hjælpe filen. Hvis du har erfaring fra andre programmerings-sprog vil du lyn hurtig finde ud af hvordan Delphi fungere.

Jeg ved slet ikke hvad det er du vil med dit projekt. Prøv at lave en klar beskrivelse af hvad det er du gerne vil lave og vi vil helt sikkert hjælpe dig. Er det et Tekst Behandlings Program eller lign. du vil lave og hvis ja, hvad er det præcist den skulle kunne?

ZeroHero
Avatar billede koden12 Nybegynder
08. juli 2003 - 22:48 #5
Hej ZeroHero
Jeg er ikke igang med noget særligt lige nu.
Min database lykkes.
Men mange tak for dit generøse tilbud.
Mine tanker går på, hvor får de de NAVNE fra.
Til de class.
Jeg må da kunne lære at forstå det og ja jeg er vandt til programmering så
jeg skal nok få fat på det.
FX er der i en af mine bøger et eksempel.
Ser sådan ud !
TYPE
Tdato =record
dag maaned,aar:Integer;
end;


TYPE
TDato = class
dag, maaned, aar : Integer;
Procedure sateDato,(D,M,A: :Integer);
function
osv osv.
MEN hvor får de den TDato fra ???
Findes den et eller andet sted eller er det noget de digter ?
VH
SJ
Avatar billede kustoden Nybegynder
09. juli 2003 - 07:52 #6
Det er lige nøjagtigt noget, de "digter".
Nemlig navnet på den klasse.


type
TDato = record... en struct i C/C++.

Type TDato = class (egentligt class(TObject)) er en klassedefinition.

TDato arver fra TObject.
Avatar billede kustoden Nybegynder
09. juli 2003 - 08:21 #7
Bortset fra det, så hører den slags vel ikke rigtig hjemme i ekspertfora?
Avatar billede zerohero Nybegynder
09. juli 2003 - 15:34 #8
Ja, det er det fede ved at programmere at man nærmest ender som en helt digter :)

En Record er som ordet siger en type der kan indeholde alverdens varianter eller arrays!

type
  koden12 = record
    HerErEnTekst : string;
  end; //Afslutter min record

Et Object er Record, men hvor der er tilladt at benytte procedure, funktioner og (de fede) properties!

type
  koden12 = object
  private
    //Dette er internt!
    funktion HerErEnFunktion : string;
    procedure HerErEnProcedure(Tekst : string);
  public
    //Dette er externt!
    property HerErEnProperty : string read HerErEnProcedure write HerErEnFunktion;
  end;

En klasse er en Pointer til et Objekt. Derfor skal man altid Create og Free en klasse til og fra computerens hukommelse - disse er forøvrigt standard implementeret (men kan selvfølig overrides).

type
  koden12 = class
  private
    //Dette er internt!
    funktion HerErEnFunktion : string;
    procedure HerErEnProcedure(Tekst : string);
  public
    //Dette er externt!
    property HerErEnProperty : string read HerErEnProcedure write HerErEnFunktion;
  end;

Det fede ved klasser er selvfølig at de kan nedarve hinanden og samtidig ovverrides!

ZeroHero
Avatar billede zerohero Nybegynder
09. juli 2003 - 15:41 #9
Når du læser artikler/bøger omkring Delphi er det oftets sådan at alt der er en Type (records/objecter/klasser/komponeter osv.) altid starter med et "T" (Type) og alt der er en Pointer starter med et "P". Alt der er en Handle starter med en "H" og mærkligt nok, alt der har med interne varianter i et objekt eller en klasse, starter med et "F" (hvilket jeg ikke ved hvorfor).

Dette behøver du jo selvfølig ikke at rette dig efter - men det er da rart at vide og så gør det også det hele lidt mere læsebart (siger de kloge).

ZeroHero
Avatar billede koden12 Nybegynder
10. juli 2003 - 00:20 #10
Mange tak for rigtig gode svar.
Nu dæmre det : )
Især det med TData har jeg luret på om det T og hvad det betyder om det var noget fast kode.
Jeg beklager hvis det ikke var et "rigtigt?" sprøgsmål men en masse er faldet på plads for mig.
I VB kode kan vi lave en BAS fil, det behøver man så ikke i Delphi ?
En BAS fil indeholder mange gange henvisninger til WinAPI32 og henter noget derfra.
Men det kan gøres direkte i Delphi ?
TAK !
VH
SJ
Avatar billede zerohero Nybegynder
10. juli 2003 - 15:43 #11
Ja, og ved du hvorfor? Delphi er et kompiler sprog ligesom C/C++, og er derfor meget hurtigere og (efter min mening) mere effektiv end VB. Du kan lave alt hvad hjertet begær med Delphi, da den selvfølig også forstår Assembler!!! Det er der mange der helt glemmer når de snakker om Delphi.
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