Avatar billede baxos Nybegynder
28. januar 2007 - 22:24 Der er 4 kommentarer og
1 løsning

Skrive og bruge en pas fil

Hej derude
Er igang med et lidt "større projekt" hvor koden er ret så helvedes lang og svær at finde rundt i så tænte på om hvordan jeg skal oprette og skrive en pas fil uden nogen form bare ren kode og så hente date og skrive data til den fra min main form?
Tak på forhånd!
Avatar billede hrc Mester
29. januar 2007 - 10:32 #1
Du går ind i New og vælger en Unit. En unit er en form uden en form! Her skriver du dine klasser. Hvis koden indeholder referencer til komponenter på formen, så er det noget skidt - men det kan løses.

En pas-fil har en interface og en implementation del:

Unit UMyUnit1;

interface

uses
  SysUtils og lignende;

type
  TMyClass = class
  private
  public
  end;

implementation

uses
  MainForm; // Grimt, men det løser problemet med referencer til komponenter i formen

kode ...
end.

I din form skal du referere til UMyUnit1 og så er du ellers kørende
Avatar billede hrc Mester
29. januar 2007 - 10:37 #2
Det grimme jeg omtalte er, at du refererer til komponenter i din form og din form refererer til procedurer i din unit. Det er vigtigt at du bemærker de 2 uses-linjer: I interface og i implementation-delen. Du kan nemlig ikke referere begge veje i eksempelvis interface-delen; så får du en "circular reference":

form TMyForm;

interface

uses
  TMyUnit1;

...

unit TMyUnit1;

interface

uses
  TMyForm;

Dette vil fejle; den ene reference skal placeres i implementation-delen.

Erfaringen viser, at det giver svært administrérbar kode, så prøv at undgå det. Her, hvor du skal have noget kode flyttet ud, er der nok ingen vej uden om.
Avatar billede baxos Nybegynder
29. januar 2007 - 15:40 #3
Kan jeg ikke for til at virke men ja du får points alligevel :)
Men kan du hurtigt svare på hvordan jeg skaffer varibles ud fra en DLL??
Avatar billede baxos Nybegynder
29. januar 2007 - 17:21 #4
hmm opretter bare et nyt et
Avatar billede hrc Mester
30. januar 2007 - 08:56 #5
Skal du bruge DLL'er? En unit er nu letterst. En Borland Package lidt sværere og en DLL sværest.

Det kan ikke passe at du ikke kan få det til at virke.

Lav en applikation. Gem din form som FMain. Vælg File\New\Unit og gem den som UTest.

Mens du er i UTest trykker du <alt-f11> og vælger FMain. Skift til FMain og skriv UTest i den øverste uses.

I filen FMain:
--------------
form TForm;

interface

uses
  ... UTest;

implementation

I filen UTest:
--------------
unit UTest;

interface

...

implementation

uses
  ... FMain;
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