Announcement

Collapse
No announcement yet.

im IExplorer Objekte verschiebenDrag&Drop

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • im IExplorer Objekte verschiebenDrag&Drop

    Hallo!
    habe eine native Anwendung. Dort kann man BitMaps verschieben/verkleinern/vergrößern/per MouseClick neue erstellen und es wird auch viel mit TCanvas gearbeitet z.B. welche Farbe ist an dem Pixel.

    Das gleiche soll jetzt auch im Internet genaus so functionieren. Wie kann man das am besten machen? Habe zwar schon mal eine HTML - Seite erstellt, aber Panel's und vor allem TCanvas habe ich nicht gefunden(vielleicht übersehen)

    Kann ich das mit .net? habe allerdings nicht so viel Ahnung davon.
    gruss Astrid

  • #2
    Du wirst nich alles was du in einer "normalen" Win32-Anwendung in einer reinen HTML/Javascrip-Anwendung hinbekommen.

    Mit .NET wirst du nur manche Sachen mehr können wenn du ein sog. Custom Control auf dem Client zum laufen bekommt oder im Browser Silverlight installiert ist. Ist im Prinzip (Unterschiede gibt es natürlich bezüglich Rechteproblematik, unterstützte Browser etc.) genauso als wenn du im Client irgendwelche andere Installierten Player wie Flash, SVG-Viewar Adobe RIA etc. vorraussetzt und dafür implementierst oder wieder eine Java-Client (bei entsprechender Browser-Unterstützung) verwendest.

    Ansonsten arbeite dich mal in das Thema AJAX ein, in dem mit Hilfe von umfangreicheren Javascript-Bibliotheken auch einiges mehr an Clientfunktionalität möglich ist.

    Comment


    • #3
      Originally posted by Bernhard Geyer View Post
      Du wirst nich alles was du in einer "normalen" Win32-Anwendung in einer reinen HTML/Javascrip-Anwendung hinbekommen.
      1. ich hab mal ein kleines Delphie Programm erstellt. Wenn ich das im Aussehen und Funtion im IExplorer zum laufen bringen würde, wäre ich glaube ich schon ein grosses Stück weiter.
      (Ein TImage kann per Drag&Drop von einer TForm auf ein TPanel oder zweites TPanel oder einem TShape abgelegt werden. Wird es dort abgelegt wird im TMemo der entspr. Parent.Name ausgegeben.)

      Code:
      unit Unit5;
      interface
      uses
      	// Windows, Messages, 
      	// - aus kommentiert weil Warning --> "Unit '%s' ist
                      //    pattformspezifisch (W1005)"
      	SysUtils, Variants, Classes, Graphics
      	, Controls, Forms,
      	 Borland.Vcl.ExtCtrls
      	, System.ComponentModel
      	, Borland.Vcl.StdCtrls;
      type
      	TForm5 = class(TForm)
      		Memo1: TMemo;
      		Panel1: TPanel;
      		Panel2: TPanel;
      		Image1: TImage;
      		Shape1: TShape;
      		procedure Panel1DragDrop(Sender, Source: TObject; X, Y: Integer);
      		public
      			constructor Create(AOwner: TComponent); override;	procedure ControlDragOver(Sender, Source: TObject; X, Y: Integer;
      				State: TDragState; var Accept: Boolean);
      	end;
      
      var
      	Form5: TForm5;
      
      implementation
      {$R *.nfm}
      
      procedure TForm5.ControlDragOver(Sender, Source: TObject; X, Y: Integer;
      	State: TDragState; var Accept: Boolean);
      begin
      //
      end;
      
      constructor TForm5.Create(AOwner: TComponent);
      begin
      	inherited;
      	//
      	Image1.DragMode := dmAutomatic;
      	//
      	Panel1.OnDragOver := ControlDragOver;
      	Panel2.OnDragOver := ControlDragOver;
      	Shape1.OnDragOver := ControlDragOver;
      	//
      	Panel1.OnDragDrop := Panel1DragDrop;
      	Panel2.OnDragDrop := Panel1DragDrop;
      	Shape1.OnDragDrop := Panel1DragDrop;
      end;
      
      procedure TForm5.Panel1DragDrop(Sender, Source: TObject; X, Y: Integer);
      begin  
      	with TImage(Source) do begin 
      		if sender is TPanel  then 
      		begin
      			Parent := TPanel(Sender);
      			Memo1.Text := 'ich auf Panel '+ TPanel(sender).Name;
      			SetBounds(x,y,Width,Height);
      		end;
      		if sender is TShape  then 
      		begin
      			Parent := TShape(Sender).Parent;
      			Memo1.Text := 'ich auf dem Parent vom Shap1; '+ TShape(sender).Name;
      			SetBounds(1,1,Width,Height);
      		end;
      	end;
      end;
      end.
      Mit .NET wirst du nur manche Sachen mehr können wenn du ein sog. Custom Control auf dem Client zum laufen bekommt oder im Browser Silverlight installiert ist.
      Ist im Prinzip (Unterschiede gibt es natürlich bezüglich Rechteproblematik, unterstützte Browser etc.) genauso als wenn du im Client irgendwelche andere Installierten Player wie Flash, SVG-Viewar Adobe RIA etc. vorraussetzt und dafür implementierst oder wieder eine Java-Client (bei entsprechender Browser-Unterstützung) verwendest.
      2. so richtig habe ich das nicht verstanden?
      Ist hier unter "Custom Control auf dem Client", Silverlight oder Flashplayer gemeint versetehen?
      3."Flash/Adobe"; da habe ich heraus gefunden es gibt "ActionScript 3.0" ; natürlich würde ich am liebsten in Borland-Entwicklungsumgebung bleiben, da gibt es doch auch ".net" ( weiss allerdings nicht wie ich das im IExplorer) verwenden kann. Für den Server wurde viel in PHP programmiert. Das Ergebnis soll natürlich auf allen Browsern laufen.



      Ansonsten arbeite dich mal in das Thema AJAX ein, in dem mit Hilfe von umfangreicheren Javascript-Bibliotheken auch einiges mehr an Clientfunktionalität möglich ist.
      - geht hier Delphi C# oder besser Delphi for PHP 2.0?

      Comment

      Working...
      X