Gå til innhold

tasle

Medlemmer
  • Innlegg

    365
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av tasle

  1. Nei, det blir bare tull å fjerne Delphikategorien. De på dette forumet som hevder noe sånt slår seg selv i hodet med en hammer og møter seg selv i døra: Ta eksempelvis kategorien for Assembler, det er bare noen få ferske poster i det forumet, og blant de 10 siste er den eldste nesten et halvt år gammelt. Så hvorfor ikke fjerne både assembler og andre tilsvarende fora også av samme årsak?

     

    Å hevde at Delphi "ikke eksisterer", er også bare tull. Delphi er big business i utlandet, det ser man på websider der man søker etter programmerere. Bilgiganter som Mercedes har valgt Delphi, men der sitter det da også klokere hoder enn her.

     

    Sammenligner man Delphi med eks. C++, som jeg også bruker (men foretrekker Delphi), så får man uttalelser som dette:

    Comparison: CodeGear's Delphi Win32 versus C++Builder

     

    C++Builder is a popular rapid application development environment produced by CodeGear for writing programs in the C++ programming language. It combines the VCL (Visual Component Library) and IDE written in Delphi, with a C++ compiler. The release cycle is such that Delphi gets major enhancements first, with C++ Builder following. Most components developed in Delphi can be used in C++Builder.

     

    C++ is a difficult language, Delphi's language "Object Pascal" is a lot easier and cleaner.

     

    Because of its strict typing rules and no need to learn how to use pointers, Delphi is easier to learn, develop in and maintain than C++.

     

    Isn't C++ more powerful and faster than Delphi? No. Delphi compiles a lot faster than C++Builder while it generates the same size executables, because they both use the same optimisation technology.

     

    Delphi has features to increase programmer productivity when building a database application. You can create a very complex database driven program with a few lines of code, if any. This is because of its data-aware controls that are available. You can create fully functional database programs with Delphi in minutes, not hours!

    osv.

     

    Sjefene her inne har bestemt seg for å kverke Delphi, det er det som er sannheten. Å slåss mot sånt er som å kjempe mot vindmøller og duster, like fåfengt, for det er ganske mange av dem.

     

    Som sagt jeg poster ikke svar på noen Delphi-innlegg her lenger. Som en annen har nevnt lenger opp i denne tråden, så er det bare å finne seg et annet forum. Jeg har funnet et annet forum på http://aasli.net/forum/, og de som er interessert i Delphi finner meg der. Det er bare å ta det i bruk!

  2. Det er ikke noe galt med Delphi, det inneholder alt man trenger til alle formål, ikke bare Pascal-syntaksen. Også C#, C++ etc.

     

    Men det er noen som alltid skal kverulere om hva som er best av Volvo eller Saab. Det fører ingen steds hen. Vettuge folk bruker vel tid til andre ting enn det. Det blir bare enda mer tull av forstå-seg-på'ere.

  3. Hei,

    hvordan anbefaler dere å begynne med Borland Delphi? Har ikke noe erfaring med programmering fra før av.

     

    Har et program (.exe) som er skrevet i Borland Delphi, hvordan får jeg "åpnet" det så jeg kan se på koden?

     

    EXE-filer er maskinkode og kan ikke leses uten videre, som nevnt ovenfor. Men du kan kan jo søke etter Delphi kildekoder på Internett. Det er i *.pas filer at selve programmeringen utføres, deretter blir det kompilert til EXEkverbare filer.

     

    En liten programstubb som summerer to tall vil se slik ut:

    Procedure Summering;
    Var
     Tall1, Tall2, Sum : Real;         //Må deklarere alle variablene aller først 
    begin
     Tall1:= 5;                        //Legger inn verdien 5 til variabelen Tall1
     Tall2:= 3;                        //Legger inn verdien 3 til variabelen Tall1
     Sum:= Tall1 + Tall2;             //Beregner summen og legger resultatet i variabelen Sum
     Editbox1.Text:= FloatToStr (Sum); //Skriver ut verdien av Sum til en tekstboks
    end;

    .. så kan du jo ta det videre derfra.

     

    Det beste er nok å kjøpe seg ei lærebok, hvis man er helt nybegynner er disse "dummies"-bøkene et godt sted å begynne (Delphi for Dummies). De er ikke så krevende og språket er enkelt.

     

    Lykke til!

  4. Det ser ut som resultatet av vinkelen er korrekt, og du må også bruke ArcTan til h/b og gjøre om fra radianer til grader (bruk gjerne Math-uniten som har en funksjon "RadToDeg").

     

    Men du presenterer den sirkelen "speilvendt", må du ha den slik? Evn. lage en World-funksjon som konverterer fra ditt koordinatsystem til pixelverdier på skjermen.

     

    Ang. Bezierkurver, så er alle kontrollpunktene "attraktorer" som trekker kurven mot seg. Det beste er om du har et skikkelig tegneprogram som kan håndtere splines og Bezierkurver, så kan du eksperimentere med å flytte kontrollpunktene inntil du får en kurve du vil ha.

  5. Relasjonen blir at en skuespiller kan ha (hatt) mange hovedroller. En-til-mange relasjon.

     

    I Delphi løser du det vanligvis slik at den tabellen som er "mange" kobles til hovedtabellen vha. å sette tabellens Mastersource til den Datasource som er "én" (hovedtabellen). I tillegg må du angi selve relasjonen for denne tabellens Masterfields-egenskap. Her velger du de datafeltene som skal kobles sammen ved å klikke på dem slik at de dukker opp under "Joined fields".

     

    Det er samme teknikk som i eksempelvis Access, der kan kobler sammen to tabeller ved hjelp av to tilsvarende datafelt.

     

    Wernie:

    Den der diskusjonen som du legger opp til er temmelig slitsom, og det er som et tog uten hjul, man kommer ingen vei. Sammenlign med biler: Hva er best av Saab og Volvo? Alle har sine fordeler og ulemper. Saken er at når og hvis man finner seg til rette med et programmeringsspråk så trives man med det. Jeg jobber med både Delphi og Java og noen andre språk, og trives best med Delphi. Hvis du har hatt oppgaver som du ikke klarte å løse med Delphi, så tror jeg du lider av manglende erfaring.

  6. Prøv noe sånt som dette i UpDown sin OnClick:

    Procedure TForm1.UpDown1Click (Sender: TObject; Button: TUDBtnType);
    Begin
     If Edit1.Text = '-1' Then
       Edit1.Text:= 'Ugyldig';
    End;

     

    Eller hvis alle negative tall skal ha den samme tekst, kan du bruke

    TryStrToInt (Edit1.Text, Tall);

    if Tall < 0 then Edit1.Text:= 'Ikke negative tall';

    osv.

     

    UpDown sin minimumsverdi kan jo også settes to 0 (null).

  7. Akkurat det tror jeg blir litt verre. Man kan starte et annet program vha. ShellExecute, men å få det andre programmet til å kjøre /vises i en form er visst ikke akkurat lett. Prøv Google og se hva du finner.

     

    Ellers kan jeg henvise til eksempelvis http://www.festra.com/eng/mtut01.htm når det gjelder ShellExecute. Der er det forresten også en Delphi tutorial for de som er interessert.

  8. Hvis jeg forstår deg rett, så gjør du dette med å endre formularets (form'ens) egenskap Position. I Delphi 2007 (og opp, muligens i D-2005, D-2006 også) er det også en liten rute nederst til høyre hvor du kan dra og plassere formularet i forhold til skjermen.

     

    I tillegg kan Top og Left endres, evn. også lagres som oppstartverdier vha. en ini-fil eller xml.

     

    Hvis området er stringent, kan du bruke Top og Left til å begrense posisjonen, eksempelvis:

    if Form1.Left < 200 then
     Form1.Left:= 200;

    osv. I dette tilfelle blir det ikke mulig å flytte formularet lenger til venstre enn til 200 pixler fra skjermens venstre kant.

  9. Du er litt vag når du skriver "tegne til minne". Jeg antar du mener å tegne på en TBitmap som ikke vises på skjermen, men som ligger i "skjult i RAM"?

     

    Noe sånt som dette?

    Procedure TForm1.FormCreate (Sender: TObject);
    Var
     Minne                       : TBitmap;
    Begin
     Minne:= TBitmap.Create;
     Minne.Width:= 300;
     Minne.Height:= 200;
     Minne.Canvas.TextOut (50, 100, 'Hallo!');
     Minne.SaveToFile ('Hallo.bmp');  // Lagre, bare for siden å kunne se hva som er tegnet
     Minne.Free;
    End;

     

    På canvasen kan du skrive og tegne så mye du vil med de metodene som hører til TCanvas'en

  10. Prosedyren vil nå se slik ut i prinsippet:

     

    Procedure TForm1.Edit1KeyPress (Sender: TObject; Var Key: Char);
    Begin
     If Key = #13 Then
       Begin
         If Uppercase (Edit1.Text) = 'HELP' Then
           Memo1.Lines.Add ('I can''t help you');
         Key:= #0;                     // Fjerner beep fra Return-tast
       End;
    End;

     

    Her må du bruke 2 enkle anførselstegn i en streng som skal vise ett anføselstegn. Bare ett anførselstegn terminerer strengen, og du får da en feilmelfing.

     

    Noen "kule programmer" har det jo blitt opp gjennom årene. Av spill også. Yatzy og Monopol er både enkelt og givende å lage for en nybegynner. For meg går det mest på applikasjoner for næringslivet (database-baserte applikasjoner, web og internett etc).

×
×
  • Opprett ny...