• 5 odgovora
  • 3.499 pregleda
Re: Prerada aplikacije? 28.04.2006. u 15:52 · pre 249 meseci #2
Samo da napomenem da se radi o aplikaciji vezanoj za izradu elektronskih testova.

Evo kako izgleda i kod:

Code:

unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TfrmTest = class(TForm)
    btnDone: TButton;
    btnExit: TButton;
    SkinData1: TSkinData;
    procedure btnExitClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
      WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
    procedure FormDestroy(Sender: TObject);
    procedure btnDoneClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    lstRadio: TList;
    procedure LoadDataFromFile(FileName: String);
  end;

var
  frmTest: TfrmTest;

implementation

{$R *.dfm}

procedure TfrmTest.btnExitClick(Sender: TObject);
begin
  Application.Terminate;
end;

procedure TfrmTest.LoadDataFromFile(FileName: String);
var
  lstStr, lstData: TStringList;
  grpRadio: TRadioGroup;
  I, J, grpTop: Integer;
begin
  lstStr := TStringList.Create;
  lstStr.LoadFromFile(FileName);
  lstData := TStringList.Create;
  grpTop := 8;

  for I := 0 to lstStr.Count - 1 do
  begin
    lstData.CommaText := lstStr[I];

    grpRadio := TRadioGroup.Create(Self);
    grpRadio.Parent := Self;
    grpRadio.Anchors := grpRadio.Anchors + [akRight];
    grpRadio.Caption := lstData.Values['Pitanje'];
    lstRadio.Add(grpRadio);

    J := 0;
    repeat
      grpRadio.Items.Add(lstData.Values['Odgovor' + IntToStr(J)]);
      Inc(J);
    until lstData.Values['Odgovor' + IntToStr(J)] = '';
    grpRadio.Tag  := StrToIntDef(lstData.Values['Tacno'], 0);

    grpRadio.Left := 8;
    grpRadio.Top := grpTop;
    grpRadio.Width := ClientWidth - 16;
    grpRadio.Height := 25 + 16 * J;
    grpRadio.ItemIndex := 0;
    grpTop := grpTop + grpRadio.Height + 4;

  end;

  btnDone.Top := grpTop + 4;
  btnExit.Top := btnDone.Top;
  VertScrollBar.Range := VertScrollBar.Range + 8;

  lstData.Free;
  lstStr.Free;
end;

procedure TfrmTest.FormCreate(Sender: TObject);
begin
  lstRadio := TList.Create;
  LoadDataFromFile('Pitanja.dat');
  ActiveControl := TRadioGroup(lstRadio[0]);
end;

procedure TfrmTest.FormMouseWheel(Sender: TObject; Shift: TShiftState;
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
  VertScrollBar.Position := VertScrollBar.Position - (WheelDelta div 10); 
end;

procedure TfrmTest.FormDestroy(Sender: TObject);
begin
  lstRadio.Free;
end;

procedure TfrmTest.btnDoneClick(Sender: TObject);
var
  I, R: Integer;
begin
  R := 0;
  for I := 0 to lstRadio.Count - 1 do
    with TRadioGroup(lstRadio[I]) do
      if Tag = ItemIndex then
        Inc(R);
  ShowMessage(Format('Od %d pitanja odgovorili ste tacno na %d (%.2f%%)',
    [lstRadio.Count, R, R / lstRadio.Count * 100]));
end;

end.


Pa ako je neko zainteresovan nek javi...

P.S. Srki_82 je pisao ovaj kod kao odgovor na jednu od ranijih mojih tema na cemu sam mu veoma zahvalan...

[Ovu poruku je menjao VladaLe dana 28.04.2006. u 16:55 GMT+1]
Potpis

My IT View Of Life-BrLOG-Delphi for PHP


» LinkedIn
Re: Prerada aplikacije? 01.05.2006. u 20:44 · pre 249 meseci #4
Nisam siguran,

ali zasto ne Delphi ASP.Net?

Tako nema potrebe da mnogo preradjujes kod koliko sam ja shvatio.

Da li sam u pravu?
Re: Prerada aplikacije? 02.05.2006. u 11:12 · pre 249 meseci #5
Citat:
bobrock1: Nisam siguran,

ali zasto ne Delphi ASP.Net?

Tako nema potrebe da mnogo preradjujes kod koliko sam ja shvatio.

Da li sam u pravu?

Pa sad, ne znam da li sam te najbolje razumeo...
Da li mislis na neki program koji automatski prevodi kod sa Delphia u ASP.Net ili na rucno prepisivanje koda u ASP.Net.

Meni nije bitan nacin kako ce ovo od Delphi koda da se preradi u JAVA ili C# bitno je da se odradi...

Znaci ako treba (i moze) da se ovo prevede iz Delphia u ASP.Net pa dalje u JAVA ili C# onda OK, ali samo prerada iz Delphia u ASP.Net i tu STOP, to nista ne pomaze...
Potpis

My IT View Of Life-BrLOG-Delphi for PHP


» LinkedIn
Re: Prerada aplikacije? 02.05.2006. u 23:42 · pre 249 meseci #6
Borland Developer Studio 2006 (Delphi 2006) podrzava pozadinski asp.net. To znaci da pises cisti Delphi kod, samo koristis komonente iz web controls a ne VCL.

Znaci pomocu samog Borland Delphi-ja (2005 i 2006) mozes pisati web aplikacije, ne treba ti prevod u Java ili C#.

Pre par dana sam kupio BDS 2006 pa sad sirim odusevljenje po forumu.
Sa Borlandovog sajta mozes skinuti free trial verziju pomocu koje mozes uraditi to sto ti treba, proguglaj.


Delphi ASP .NET tutorial
http://delphi.about.com/od/aspnet/a/aspnetcourse.htm



[Ovu poruku je menjao bobrock1 dana 03.05.2006. u 00:45 GMT+1]
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme