Ads

Ads

Translate

Showing posts with label Component. Show all posts
Showing posts with label Component. Show all posts

Saturday, 27 September 2014

[ Komponent ] Native Progress Dialogs untuk Delphi XE7 Firemonkey Android dan IOS

Author: Jaroslav Brovin
License type: Open Source

Paket ini termasuk beberapa komponen:
  1. TfgProgressDialog, TfgActivityDialog - Indication of the long running operations (iOS, Android)
  2. TfgVirtualKeyboard - Simplified work with virtual keyboard (iOS, Android)
  3. TfgActionSheet - page to select the action (http://fire-monkey.ru/topic/23-kak-sdelat-panel-dlia-vybora-deistvii-na-podob/ )
  4. TfgGradientEdit - Improved control to set the gradient
  5. TfgColorsPanel - set of colors, allows the user to select any color.
  6. TfgLinkedLabel - label with a link. By clicking the link opens in the browser (supports all platforms)
Special components for displaying notifications of longtime operation (downloading, authorization): TfgProgressDialog and TfgActivityDialog
TfgProgressDialog - If you can estimate duration of long time operation (count of downloaded files, size of file and etc.).
TfgActivityDialog - if you can not estimate duration of long time operation (Response from server, authorization).


TfgActivityDialog
Working under iOS:
TfgProgressDialog.png TfgActivityDialog-iOS.png
Work under Android (Higher than GingerBread 2.3):
TfgActivityDialog-Android.png
Work under Android (GingerBread 2.3):
TfgActivityDialog-Android-02.png
TfgProgressDialog
Working under iOS:
TfgProgressDialog-iOS.png
Work under Android (Higher than GingerBread 2.3):
TfgProgressDialog-Android-01.png TfgProgressDialog-android-02.png
Work under Android (GingerBread 2.3):
TfgProgressDialog-Android-03.png
TfgActionSheet
TfgActionSheet.png
TfgActionSheet-iOS.png TfgActionSheet-Android.png
TfgColorsPanel
TfgColorsPanel.jpg
TfgLinkedLabel
TfgLinkedLabel.png


Monday, 28 October 2013

Best and Free Delphi 7 Component


Download
XStringGrid.rar
6 minutes ago · Latest version by Fajar Priyadi

Saturday, 24 August 2013

XStringGrid







XStringgrid is an extended version of Delphi's StringGrid which adds advanced formatting, editing and sorting capabilities.

Download Disini

Thursday, 13 June 2013

Komponent TChromeTabs




Our new live network monitoring application required an up to date user interface that allowed data to be displayed and manipulated in the most intuitive way possible. We tried many different UI approaches until we settled on the modern look and feel of Chrome's tabs. We have decided to open source our implemetation to allow other developers to benefit from it's features. It is currently available for Delphi 7 through Delphi XE3 (32 and 64 bit).
You can download the latest source and binary demo here. You can also grab the source from Google Code.

Here's a what TChromeTabs can do.

Chrome Tabs overview

  • The tab container can be tranparent and painted over Vista Aero glass.
  • Tabs can have any level of transparency.
  • All movement and style transitions can be optionally animated.
  • Tabs can be pinned to the side of the container.
  • Each tab can have both an image and overlay image. 

Chrome Tabs Unicode
  • Full BiDi and Unicode support
  • BiDi tabs and controls can be aligned to the right.
  • BiDi text can be aligned to the right.* Unicode supported in IDE versions from Delphi 2009 

Chrome Tabs Glows

  • Mouse glow - a glow is painted over the hot tabs.
  • Modified glow - a glow is drawn moving across the top of the a tab when it has been modified. 
Chrome Tabs Gradiants

  • All controls support gradiants and alpha levels.
  • Different look and feel for Active, Not Active and Hot states.
  • All controls support borders.
  • Tabs can be any height.
  • Control shapes can be altered using events. 
Chrome Tabs Tab Widths

  • Dyanmically resizing tabs
  • Maximum and minimum tab sizes
  • Various text truncation options including ellipses and fade.
  • Intelligent content visibility. Tab details will be shown hidden depending on the width of the tab.
  • Auto hide close button when tab width is too small. 
Chrome Tabs Scrolling
  • Full scrolling support.
  • Scroll buttons can be overlayed and automatically hidden.
  • Scrolling automatically enabled when minimum tab width is reached.
  • Tabs are autoscrolled when a tab is being dragged. 
Chrome Tabs Drag Drop


  • Fully animated tab drag and drop
  • Drag and drop tabs to new positions.
  • Fully automated drag and drop tabs between containers.
  • Built in tab drag image. All you need to do is supply the wincontrol in an event. 

Chrome Tabs Close Button

  • Intelligent tab resizing when the close button is clicked. 
  • Demo application allows access to all TChromeTabs features and properties including a look and feel editor.
  • Options and LookAndFeel properties can be saved to/loaded from a file or stream. 

Thursday, 7 March 2013

New Delphi Twain component

This Delphi Twain modified by Kluug.net is the unicode - enabled successor of Delphi Twain library by Gustavo Gaud which hasn't been updated since 2004.

The library allows you to easily access scanning functions from Delphi 6, 7, 2007, 2009, 2010, XE, XE2, XE3 and also from Lazarus.


Library design

  • Full html help for the component classes. The library is able to fully access Twain capabilities.
  • Acquiring images is easy as a few line codes
  • Direct access to various twain features
  • Showcases making it easy to learn

Installation

I included packages for Delphi XE2, but there is no need to install them. You can easily use Delphi Twain from the source code. Just add the source code directory to your library path.
An experienced user will definitely be able to create packages for other Delphi versions.

License

He couldn't find any license information of the original DelphiTwain library, so I decided to license my modified library (starting from version 1.1) under:
MPL / GPL / LGPL.
The library is initially created by © Gustavo Daud and modified by Nemeth Peter and vcldeveloper.

Original versions


 Please be sure you check the license information before downloading any of the files below.

Libraries with full source code


http://www.kluug.net/delphitwain.php

Tuesday, 8 January 2013

New Motion detector component for Delphi 7 and XE

TMotionDetector
Motion detector component for Delphi 7 and XE



The motion detector is used to detect motion and lightness from webcam, video frames and more...
By feeding frames into the component, it defines the value and lightness parameters than can be read.
Optional 8-Bit mask of motion can be enabled, and drawn on the image if desired.
It has tolerance and minimum pixel difference tolerance that can be adjusted to exclude background noise and so on.






HISTORY

2012, July: Version 1.1 available at webpage
2012, April: Thanks to Soitjes for sending me his Delphi XE version of the project.
2012, February: Version 1.0 available at webpage

WHAT'S NEW
* Changes of data types for Delphi version compatibility, pAnsiChar etc.
* Lightness "div 3" not inside the loop, now done finally
* Using pRgb directly, might be a little faster

http://www.mbsnet.dk/_media/hlrqmd6oemc2wgfk.zip Download Motiondetect v1.1.zip, 215.36 Kb.

website pengembang : http://www.mortenbs.com

Properties

Property Description
tolerance:cardinal   Tolerance (Number of pixels)  
minimumDifference:byte   Minimum pixel-difference tolerance  
useDetectLight:boolean   Enable lightness detection (slower)  
motionMask:tShowMask   Show motion mask (None, Full Mask, Motion Only, Last Motion Only)  
onMotion:tSimpleEvent   Event when motion above tolerance is beginning  
value:cardinal   Current number of pixels above the tolerance  
lightness:cardinal   Current lightness amount  
hasMotion:boolean   Is true when motion and three seconds after  
maxDiff:byte   Maximum difference that can be read as info  

Routines
Routine Description
reset   Reset motion info parameters  
setSize()   Set width and height simultaneously  
feedFrame():boolean   Feed frame into the motion detector  
getImage():boolean   Get current image with overlays  
sq:cardinal   Square size (width*height)  

Motiondetect Src.pas (TMotionDetector)

unit motiondetect;

//For Delphi 7 and XE, 24-Bit TBitmap

//HISTORY
//2012, July:     Version 1.1 available at webpage: http://www.mortenbs.com/it/delphi/motiondetector/
//2012, April:    Thanks to Soitjes sending me his Delphi XE version of the project.
//2012, February: Version 1.0 available at webpage: http://www.mortenbs.com/it/delphi/motiondetector/

//WHAT'S NEW
// * Changes of data types for Delphi version compatibility, pAnsiChar etc.
// * Lightness "div 3" not inside the loop, now done finally
// * Using pRgb directly, might be a little faster

interface

uses
 sysUtils,classes,graphics;

type
 pRgb=^tRgb;
 tRgb=record b,g,r:byte end;//24-Bit RGB

const
 NULL = #0;
 NONE = $00;

type
 tSimpleEvent=procedure of object;//Simple event without any arguments
 tShowMask=(smNone,smFullMask,smMotionOnly,smLastMotionOnly);
//-----------------------------|----------------|----------------------|----------------------------
 tMotionDetector=class(TComponent)//24-Bit bitmap motion detector
  procedure reset;                              //Reset motion stats
  procedure setSize(w,h:word);                  //Set width and height simultaneously
  function feedFrame(aBmp:tBitmap):boolean;     //Feed frame into the motion detector
  function getImage(aBmp:tBitmap;aRePaint:boolean=true):boolean;//Get current image with addons
  function sq:cardinal;                         //Square size of current width and height
  procedure setTolerance(n:cardinal);
  procedure setMinDiff(b:byte);
 private
  pLastFrame                   :pByte;          //Last frame data to compare (24-Bit)
  pMotionMask                  :pByte;          //Optional motion mask overlay (8-Bit)
  fWidth,fHeight               :word;           //Size
  fTolerance                   :cardinal;       //Tolerance of different pixels
  fMinDiff                     :byte;           //Minimum pixel difference
  fMotionMask                  :tShowMask;      //Motion mask overlay
  fUseDetectLight              :boolean;        //Enable using lightness count
  fOnMotion                    :tSimpleEvent;   //..
  motionTick                   :int64;
  procedure notifyMotion;
 public
  //output stats:
  hasMotion                    :boolean;        //Is there motion currently
  maxDiff                      :byte;           //Current max difference of any pixel
  value,lightness              :cardinal;       //Current motion and lightness amount
  constructor create(aOwner:tComponent);override;
  destructor destroy;override;
  property tolerance           :cardinal        read fTolerance        write setTolerance;
  property minimumDifference   :byte            read fMinDiff          write setMinDiff;
  property useDetectLight      :boolean         read fUseDetectLight   write fUseDetectLight;
  property motionMask          :tShowMask       read fMotionMask       write fMotionMask;
  property onMotion            :tSimpleEvent    read fOnMotion         write fOnMotion;
 end;
//-----------------------------|----------------|----------------------|----------------------------

function tick64:int64;stdcall//Get tick count (64-Bit)
//--
procedure Register;

implementation

procedure pFill(p:pAnsiChar;sz:cardinal;ch:ansiChar=NULL);
begin
 while sz<>NONE do begin p^:=ch;inc(p);dec(sz) end;
end;

function pReAlloc(var p;aSize:cardinal;aZeroMem:boolean=true):boolean;
begin
 try reAllocMem(pointer(p),aSize);result:=true except result:=false end;
 if result and aZeroMem then pFill(pointer(p),aSize,NULL)
end;

//--------------------------------------------------------------------------------------------------
//tMotionDetector:

constructor tMotionDetector.create(aOwner:tComponent);
begin inherited create(aOwner);
 pLastFrame:=nil;pMotionMask:=nil;
 fWidth:=NONE;fHeight:=NONE;
 fTolerance:=1000;fMinDiff:=35;
 fMotionMask:=smMotionOnly;
 fUseDetectLight:=true;
 reset;
end;

destructor tMotionDetector.destroy;
begin
 if pMotionMask<>nil then begin freeMem(pMotionMask);pMotionMask:=nil end;
 if pLastFrame<>nil then begin freeMem(pLastFrame);pLastFrame:=nil end;
 inherited destroy
end;

procedure tMotionDetector.reset;
begin hasMotion:=false;
 value:=NONE;lightness:=NONE;maxDiff:=NONE;
end;

procedure tMotionDetector.setSize(w,h:word);//Set width and height simultaneously
begin
 if (w=fWidth) and (h=fHeight) then exit;
 fWidth:=w;fHeight:=h;reset;
 if not pReAlloc(pMotionMask,sq) then exit;   //"safe" reallocate and fill blank (clear)
 if not pReAlloc(pLastFrame,sq*3then exit;  //"safe" reallocate and fill blank (clear)
end;

function tMotionDetector.feedFrame(aBmp:tBitmap):boolean;//Feed frame into the motion detector
var
 p              :pRgb;
 eP,sP,pSrc     :pAnsiChar;
 mP,lP          :pByte;
 psl,v,l,z      :cardinal;
 k,n,aMaxDiff   :byte;
 y              :word;
begin
 result:=false;if aBmp.pixelFormat<>pf24bit then exit;
 if (aBmp.height<>fHeight) or (aBmp.width<>fWidth) then setSize(aBmp.width,aBmp.height); //set size if different
 if (fHeight<2or (fWidth<2then exit;                     //exit if empty picture
 pSrc:=aBmp.scanLine[NONE];sP:=pSrc;                         //first pixel (source)
 psl:=aBmp.scanLine[1]-pSrc;                                 //bytes per scan line
 if fMotionMask<>smNone then mP:=pMotionMask else mP:=nil;   //motion mask (if enabled)
 lP:=pLastFrame;aMaxDiff:=NONE;v:=NONE;l:=NONE;z:=fWidth*3;  //reset
 for y:=NONE to fHeight-1 do begin
  p:=pRgb(sP);eP:=sP+z;                                      //start + end pointer of current line (y)
  while p<eP do begin                                        //fast loop pixels
   k:=abs(lP^-p^.b);lP^:=p^.b;inc(lP);                       //detect motion and write to last frame, BGR
   n:=abs(lP^-p^.g);lP^:=p^.g;inc(lP);if n>k then k:=n;
   n:=abs(lP^-p^.r);lP^:=p^.r;inc(lP);if n>k then k:=n;
   if k>aMaxDiff then aMaxDiff:=k;                           //detect maximum difference
   if k>=fMinDiff then inc(v);                               //value by tolerance
   if fUseDetectLight then inc(l,p^.r+p^.g+p^.b);            //detect lightness
   inc(p);
   if mP<>nil then begin                                     //8-Bit mask of pixel difference
    if fMotionMask<>smLastMotionOnly then mP^:=k else
    if (mP^>fMinDiff) or (mP^=NONEthen mP^:=k else mP^:=NONE;
    inc(mP);
   end;
  end;inc(sP,psl)                                            //next source line
 end;
 value:=v;

 if v>tolerance then begin
  if not hasMotion then notifyMotion
 end else
 if hasMotion and (tick64-motionTick>=3000then hasMotion:=false;

 if fUseDetectLight then lightness:=l div 3;
 maxDiff:=aMaxDiff;result:=true;
end;

function tMotionDetector.getImage(aBmp:tBitmap;aRePaint:boolean=true):boolean;//Get current image with addons
var
 dP          :pRgb;
 eP,pDst     :pAnsiChar;
 lP,mP       :pByte;
 z,psl       :cardinal;
 i           :smallInt;
 y           :word;
begin
  result:=false;
  aBmp.height:=fHeight;
  aBmp.width:=fWidth;
  aBmp.pixelFormat:=pf24bit;
  if (fHeight<2or (fWidth<2or (pLastFrame=nilthen  exit;//exit if empty picture
  pDst:=aBmp.scanLine[NONE];//first pixel (dest)
  psl:=aBmp.scanLine[1]-pAnsiChar(pDst);//bytes per scan line

  lP:=pLastFrame;z:=fWidth*3;
  if fMotionMask<>smNone then mP:=pMotionMask else mP:=nil;
  for y:=NONE to fHeight-1 do begin
   dP:=pRgb(pDst+y*psl);eP:=pAnsiChar(dP)+z;
   while dP<eP do begin

    if aRePaint then begin
     dP^.b:=lP^;inc(lP);
     dP^.g:=lP^;inc(lP);
     dP^.r:=lP^;inc(lP)
    end;//repaint frame

    if mP<>nil then begin
     case fMotionMask of
      smMotionOnly,smLastMotionOnly:if mP^>fMinDiff then begin dP^.g:=NONE;dP^.b:=NONE;i:=dP^.r+mP^;if i>$FF then i:=$FF;dP^.r:=i end;
      smFullMask:if mP^>fMinDiff then begin dP^.g:=NONE;dP^.b:=NONE;i:=dP^.r+mP^;if i>$FF then i:=$FF;dP^.r:=i end;
     else
      dP^.r:=NONE;
      dP^.b:=NONE;
      i:=dP^.g+mP^;if i>$FF then i:=$FF;
      dP^.g:=i
     end;
     inc(mP);
    end;inc(dP);
  end;
 end;

 //some text overlay...
 with aBmp.canvas do begin
  brush.color:=clBlack;font.style:=[fsBold];
  if hasMotion then font.color:=clRed else font.color:=clLime;
  textOut(5,5,'Motion: '+intToStr(value)+' of '+intToStr(sq));
  font.color:=clWhite;
  textOut(5,20,'Lightness: '+intToStr(lightness div sq)+' of '+intToStr(255));
  textOut(5,35,'Max difference: '+intToStr(maxDiff));
 end;

 result:=true
end;

function tMotionDetector.sq:cardinal;begin result:=fWidth*fHeight end;
procedure tMotionDetector.setTolerance(n:cardinal);begin if n<10 then n:=10;fTolerance:=n end;
procedure tMotionDetector.setMinDiff(b:byte);begin if b<1 then b:=1;fMinDiff:=b end;

procedure tMotionDetector.notifyMotion;
begin hasMotion:=true;motionTick:=tick64;
 if assigned(fOnMotion) then fOnMotion;
 //windows.beep(1000,100)
end;

//..

function tick64:int64;external'winmm.dll' name'timeGetTime';

procedure Register;
begin
 registerComponents('Standard', [tMotionDetector]);
end;

end.


Motiondetect Demo.pas (TMotionDetector)
unit Unit1;

interface

uses
  windows,sysUtils,classes,controls,graphics,forms,comObj, ExtCtrls, activeX,
  directShow9, motiondetect;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Image1: TImage;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    pGraph       :iGraphBuilder;
    pBuilder     :iCaptureGraphBuilder2;
    pDevEnum     :iCreateDevEnum;
    pClassEnum   :iEnumMoniker;
    pMoniker     :iMoniker;
    pSrc         :iBaseFilter;
    cFetched     :pLongInt;
    videoWindow  :iVideoWindow;
    mediaControl :iMediaControl;
  public
    motion :tMotionDetector;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}


procedure TForm1.FormCreate(Sender: TObject);
begin
 motion:=tMotionDetector.create(nil);
 image1.picture.bitmap:=tBitmap.create;
 with image1.picture.bitmap do begin
  pixelFormat:=pf24bit;
  width:=image1.width;
  height:=image1.height
 end;
 //--
 pGraph:=createComObject(CLSID_FilterGraph) as iGraphBuilder;
 pBuilder:=createComObject(CLSID_CaptureGraphBuilder2) as iCaptureGraphBuilder2;
 pBuilder.SetFiltergraph(pGraph);
 pDevEnum:=createComObject(CLSID_SystemDeviceEnum) as iCreateDevEnum;
 pDevEnum.createClassEnumerator(CLSID_VideoInputDeviceCategory,pClassEnum,0);
 if pClassEnum.next(1,pMoniker,cFetched)=S_OK then
 pMoniker.bindToObject(nil,nil,IID_IBaseFilter,pSrc);
 pGraph.addFilter(pSrc,'Video Capture');
 pGraph.queryInterface(IID_IMediaControl,mediaControl);
 pGraph.queryInterface(IID_IVideoWindow,videoWindow);
 pBuilder.renderStream(@PIN_CATEGORY_PREVIEW,@MEDIATYPE_VIDEO,pSrc,nil,nil);
 videoWindow.put_windowStyle(WS_CHILD or WS_CLIPSIBLINGS);
 videoWindow.setWindowPosition(0,0,panel1.width,panel1.height);
 videoWindow.put_owner(panel1.handle);
 mediaControl.run;
 timer1.interval:=250;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var aBmp:tBitmap;dc:hdc;
begin
 aBmp:=tBitmap.create;dc:=getDc(panel1.handle);
 with aBmp do begin pixelFormat:=pf24bit;width:=image1.width;height:=image1.height end;
 bitblt(aBmp.canvas.handle,NONE,NONE,width,height,dc,NONE,NONE,SRCCOPY);
 motion.feedFrame(aBmp);
 motion.getImage(aBmp);
 image1.picture.bitmap.canvas.draw(NONE,NONE,aBmp);
 aBmp.free;
end;

end.

Saturday, 5 January 2013

Component Barcode Untuk Delphi 7

Rekan-rekan pasti sudah tahu apa itu barcode....
Disini saya akan mengulas sedikit tentang barcode :


Barcode pada dasarnya adalah susunan garis vertikal hitam dan putih dengan ketebalan yang berbeda, sangat sederhana tetapi sangat berguna, dengan kegunaan untuk menyimpan data-data spesifik misalnya kode produksi, tanggal kadaluwarsa, nomor identitas dengan mudah dan murah, walaupun teknologi semacam itu terus berkembang dengan ditemukannya media magnetic, rfid, electronics tags, serial eeprom (seperti pada smart card), barcode terus bertahan dan masih memiliki kelebihan-kelebihan tertentu yaitu ,yang paling utama, murah dan mudah, sebab media yang digunakan adalah kertas dan tinta, sedangkan untuk membaca barcode ada begitu banyak pilihan di pasaran dengan harga yang relatif murah mulai dari yang berbentuk pena(wand), slot, scanner, sampai ke CCD dan bahkan kita dapat membuatnya sendiri. Jenis barcode sangatlah banyak mulai dari yang tradisional yaitu 1 dimensi sampai dengan barcode yang multi dimensi.

Nah pada kesempatan kali ini saya mencoba untuk berbagi sebuah Component untuk Borland C++ Builder 5, Borland C++ Builder 6, Borland Delphi 4, Borland Delphi 5, Borland Delphi 6, Borland Delphi 7 dan Borland Delphi 8. Yaitu Barcode freeware component.


galih library

galih library

Tertarik untuk mencoba Silahkan download dengan link di bawah ini :
sekian dan terima kasih.... selamat mencoba

Wednesday, 2 January 2013

TmgFileListator - The files finder

TmgFileListator is a non-visual component for your beloved Delphi. Simply place TmgFileListator onto your application form and your program will be able to perform multiple simulataneous multithreading searches over the computer of your end-user.
You'll have to set only few parameters:
  • Set optionally a Title for your search
  • Set a mask: this can be an extension ('*.txt'), an extensions group('*.txt;*.doc;*.pdf'), a filename ('Borland Delphi.*') or even a partial file name ('and Del*.*')
  • Set a beginning Path: this is the folder within to search
  • Set RecursiveSearch parameter: if True, all subfolders of Path will be scanned during search
  • Set OutputDevice (actually only TTreeView is supported): here will be displayed the searh results (you can set the same OutputDevice for many searches or set specific OutputDevice for each search)
  • Set ProgressDevice (actually only TLabel is supported) to display file names scanned during search operations
  • Optionally you can set an Animation that is a TAnimate component to inform your users that a search is actually running
Obviously, you can make this settings indifferently at design-time or at run-time. Then, you will be able to use search results as you wish, for nstance to make a backup copy of these files (tell you something this?)
Compatible with Delphi 6, Delphi 7, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, XE and XE2 (not tested XE3)

2012-12-16: fixed a bug in recursive folder search; fixed a bug in OnCompletedSearchs event.

Download

TmgWebUpdater - Easily update your applications

TmgWebUpdater is a non-visual component for our beloved Delphi. Simply place TmgWebUpdater onto your main form and your program will be able to automatically check for updates, download the new installer and run it when download has finished.
TmgWebUpdater requires Indy libraries installed and to use it you have to enable Delphi versioning system for project you want to be able to auto-update: Project->Options->Version Info: be sure 'Include version information in project' checkbox is checked.
TmgWebUpdater makes easy as never before implementing automatic web update feature within your application.
In order to make it running you have to:
  • Place TmgWebUpdater on the main form of your app
  • upload to web server the script (by default its name is checkUpdates.php or checkUpdates.asp and it is created in the main application folder; you can rename it, modify it or leave it as it is: the only thing you don't have to change in this file is the version number which is created automatically and formatted in the right way
  • create the program which will be downloaded and which will install updates: the best thing is to use an installer which install new versions of files
  • upload this file to your web server
  • Set DownloadUrl and CheckUrl properties with your data (names can be changed as you wish):
    • CheckUrl: http://www.yourserver.com/yourfolderupdates/checkUpdates.php
    • DownloadUrl: http://www.yourserver.com/yourfolderupdates/updateexe.upd
  • Set property Active to true
To create your script you can use the CreateScript utility included in the archive and then upload to your server.
That's all: everytime your application will start, it will check if there are updates available and i will download them.
Tested on Delphi 6 up to Delphi 2010 (presumably working with Delphi XE and Delphi XE2 also).

 Download

Friday, 30 November 2012

Autosize form delphi dengan ResizeKit2

Just place the ResizeKit on your form!
ResizeKit adalah komponen yang membuat ukuran form aplikasi dan layar resolusi independen dalam satu langkah mudah. Cukup melampirkan ResizeKit ke form Anda dan secara otomatis mengubah ukuran kontrol setiap atau semua font dan tanpa menulis satu baris kode. Dengan menetapkan sifat sederhana atau dengan mengaitkan ke acara ExitResize, Anda dengan mudah dapat menyesuaikan proses Resize untuk bekerja dengan hampir semua jenis aplikasi. ResizeKit bahkan dapat mengubah ukuran kontrol pihak ketiga yang paling. Gunakan ResizeKit dari hari pertama pada program baru dan tentu saja pada program yang didirikan tanpa mengubah desain program atau kode. Lisensi ResizeKit adalah bebas royalti untuk pengembangan aplikasi dan bebas royalti untuk aplikasi runtime.

Bahkan beberapa kontrol pihak ketiga yang tidak menentukan Kiri, Top, Tinggi, Lebar atau parameter atau kontrol di mana sifat ini terisolasi dari perubahan ukuran dapat diubah ukurannya dengan ResizeKit tersebut. Sel-sel dalam aplikasi Grid atau Penyebaran adalah beberapa contoh dari hal ini. Dalam kasus ini, kontrol ini atau font dapat dengan mudah diubah ukurannya dengan menentukan dimensi kontrol atau font dalam acara ExitResize. Sebuah program contoh sederhana yang menggambarkan kode ini disertakan dengan ResizeKit tersebut.

Note: There are third party controls are can not be resized using the ResizeKit2. Please download and test the ResizeKit2 trial version which is fully functional. If you have any questions, please let us know.
ResizeKit Main Features
  • Automatically resizes all controls and fonts on the form.
  • Simply place the Resize Control on the form. No need to redesign or add additional code.
  • Create applications that are size and screen resolution independent.
  • Maximum and minimum form height and width can be specified.
  • Initial location of the form can be specified.
  • Controls and fonts can also be excluded from resizing.
  • Runtime royalty-free license. Distribute unlimited applications.
  • The ResizeKit ActiveX component is based on ATL so it is fast and lightweight.
  • The ResizeKit VCL component has unified .EXE so applications can be distributed in one simple unit.
  • Resizes most third party controls without the need for additional code.
  • Contains easy to use properties and its ExitResize event allows you to customize the resize process.
  • Useful sample programs are included.

  This is the ResizeKit ActiveX Component or Native VCL Component
Just add the ResizeKit Component to your form at design


Example: Reducing the size of the form or changing resolution during execution (ResizeKit2VB)
If you reduce the size of your form without using the ResizeKit, the controls and fonts on your form are hidden beyond the form's right side and bottom borders.







By simply placing the ResizeKit on your form the size of the controls and fonts automatically changes with changes in the size of the form. All controls and fonts appear in the same proportion as the original form



In some cases, controls or fonts cannot be automatically resized. Third party controls that do not specify Left, Top, Height, or Width parameters or controls in which these properties are insulated such as the cells in Grid or Spread applications are some examples. In the above example, the DBGrid itself is resized but the individual cells within the DBGrid are insulated from the ResizeKit. In such cases, these controls or fonts can be easily resized by specifying the dimensions of the control or font in the ExitResize Event. The ResizeKit includes sample programs to illustrate how to do this





DOWNLOAD

Link1

mirror

Link2

Best Post This Year

Install Fortesreport community Delphi 7 dan RX Berlin

Download  Pertama2 kita harus punya file installernya terlebih dahulu, download  https://github.com/fortesinformatica/fortesrepo...

Total Pageviews

© 2014 Fajar Priyadi. WP themonic converted by Bloggertheme9. Published By Gooyaabi Templates | Powered By Blogger
TOP