Avatar billede espeholt_jr Nybegynder
10. marts 2005 - 22:05 Der er 3 kommentarer og
1 løsning

test mit simple program

Hej...

Jeg er igang med at lave et program der skal kunne åbne en hjemmeside på en cd...

Programmet tjekker om brugerens computer for opløsning, farve dybde og internet explorer version...

Hvis alt er som det skal være åbner en side, eller kommer der en messagebox med noget frem...

Skal være 100% på det virker 100% korrekt, så i bedes teste :) forslag til kode er meget velkomne... har en mistanke om, at min funktion til at åbne internet explorer er knap så god (DEN SKAL åbne IE, og ikke standard browser)

Program: www.espeholt.dk/Project1.exe

Kode: http://pastebin.com/252741
Avatar billede espeholt_jr Nybegynder
10. marts 2005 - 22:06 #1
adressen til programmet er

www.espeholt.dk/Project1._exe

min server vil nemlig ikke acceptere .exe, så slet _
Avatar billede snowball Novice
10. marts 2005 - 22:51 #2
Nu kender jeg ikke hele formålet med opgaven samt hvilke tanker du har med dette, men her er mine kommentare.

If "if (screen.Height > 768) and (screen.Width > 1024) then" skal det være >= da netop den pågældende opløsning eller ikke vil være gyldig.

Dit kompilerede program viser slet ikke de labels du skriver noget til, og eftersom din kode ikke indeholder nogen form for resize af formen, så bliver de labels jo aldrig vist, så derfor er der jo ingen grund til at de er der. Derfor ville jeg lave en FormShow som ser sådan her ud:

procedure TfrmMain.FormShow(Sender: TObject);
var
  str: string;
  thing:integer;
  Screensize, ColorDepth, IE :boolean;
begin
  Screensize := false;
  ColorDepth := false;
  IE := false;

  if (screen.Height >= 768) and (screen.Width >= 1024) then
    Screensize := true;

  getcolorscount;

  if (cbits > 23) then
    ColorDepth := true;

  if (GetIEVersion > 5) then
    IE := true;

  if not Screensize or not ColorDepth or not IE then begin
    str := 'Din computer, og dens indstillinger, kan medvirke at siden ikke bliver vist korrekt. Der blev fundet følgende fejl:';
    if not ScreenSize then
      str := str + #13#10#13#10 + 'Din skærmstørrelse er ikke 1024*768 eller højere.';

    if not ColorDepth then
      str := str + #13#10#13#10 + 'Farve dybden på din skærm er ikke 24 bit eller højere.';

    if not IE then
      str := str + #13#10#13#10 + 'Du har ikke Internet Explorer 6 eller bedre indstalleret.';

    str := str + #13#10#13#10 + 'Hvis du vil rette fejlende tryk "Ja", hvis ikke, tryk "Nej" for at fortsætte. Hvis du vil lukke for dette program, tryk da "Annuller".';
    thing := Application.MessageBox(pchar(str),pchar('Amish - projektopgave'),MB_YESNOCANCEL);

    Case thing of
      2: Close;
      6: Begin
          OpenInternetExplorer(ExtractFilePath(Application.ExeName) + 'hjælp.htm');
          close;
        End;
      7: Begin
          OpenInternetExplorer(ExtractFilePath(Application.ExeName) + 'forord.htm');
          close;
        End;
    End;
  end
  else
  begin
    OpenInternetExplorer(ExtractFilePath(Application.ExeName) + 'forord.htm');
    close;
  end;
end;

Jeg har desuden også lave en Case til at håndtere svaret fra din MessageBox - det er lidt pænere og ikke mindst lige mere optimalt.
Avatar billede espeholt_jr Nybegynder
10. marts 2005 - 23:44 #3
ja ved det godt... også noget jeg lige har lavet om...

Hmm min funktion til at åbne IE gør så vinduet åbner bagest... ved du hvordan det kan rettes?
Avatar billede snowball Novice
18. marts 2005 - 19:27 #4
Havde helt glemt det her spørgsmål, sorry.

Jeg har ikke din kode liggende mere, og dit link virker heller ikke mere, så jeg kan ikke lige prøve mig frem. Måske dit IE objekt har en SetFocus eller BringToFront funktion. Ellers ved jeg ikke lige umiddelbart.
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