Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

СообЧА. Программирование на Delphi


Служба Рассылок Subscribe.Ru
Subscribe.Ru : СообЧА. Программирование на Delphi
Служба Рассылок Subscribe.Ru проекта Citycat.Ru

Я обновляю свой сайт, и могу занятся вашим... за символическую плату(договоримся)



 

 

Мир Delphi

PixelSoftware (у нас архив рассылки+файлы примеры)

    Mustdie ,or not Mustdie that is the question?

 

В новом сезоне - новый дизайн!

 

 

СообЧа - Программирование на Delphi, 

Its a Wild Wild WEB: Поздравляем всех с наступающим днем учителя....

 

(С) 2000 - 2001COOLer

 

Дизайн: Pixel Web Lab

 
   The most Wolrd Wide Webbed!!!  

Оглавление

 

В этом выпуске:

 

Рассылка СообЧА

 
     

Статьи в газете:

В сети:

Все желающие могут заказать у меня программу пример, к статьям этой рассылки.

Тематические шутки: 

  • Пропал комп : корпус белый, мышка лонгитех.

Особые приметы:

Разогнан до 1 Ггц

Имеет нецензурную надпись на левом борту, откликается на сигналы модема "Роквелл 56к".

 

  • Что общего у ОС Windows и Человека?

Оба в критических ситуациях могут повесится

 

 
Рассылки Subscribe.Ru это стильно удобно, и информативно!
СообЧа (СООБщество ЧАйников). Обмен опытом, вопросы, ответы.

  Назад к оглавлению    
   
 

Конкурс и новости рассылки

 
 
   

Охота на VCL 

Требования:

Простота в использовании

Надежность

Бесплатность

Работа со своим БД(Без инсталлирования внешних баз)

Top Links:

3d Library

2d graphic

Manuals/Instructions

 


  • Нравится ли вам наша рассылка?

  • Да

    Нет

    Не успел оценить

    Если вы ищите компонент, крак к нему, или просто хороший линк, жмите сюда
      Назад к оглавлению    
       
     

    Новости

     
     
       
    Я немного разочарован по поводу вашего энтузиазма, что в конкурсе "Золотой Чайник" никто принять участие не хочет?

    Немного грустно стало мне, хочется чтобы Борланд порадовала нас какой нибудь потрясающей новостью, но в их "Дельфинарии" пока тихо...

    Объявляется сбор Самых НЕОБЫЧНЫХ программ или функций, для проекта " Идея 2002 " .

     

     
      Назад к оглавлению    
       
     

    Результат не важен, главное Process

     
     
       

    Многие начинающие программисты не знают о методе Application.ProcessMessages() и сталкиваются с проблемами, которых не могут объяснить. Например хотим написать что-то на форме и через 5 секунд стереть.

    Нужно сделать так:

     


        procedure TForm1.Button1Click(Sender: TObject);
    begin
    Label1.Caption:='Started';
    Application.ProcessMessages();
    sleep(1000);
    Label1.Caption:='Finished';
    end;

    Попробуйте убрать Application.ProcessMessages() и 'Started' вы никогда не увидите, это связано с тем, что Windows ждет пока накопятся задачи в очереди а не выполняет их сразу, Application.ProcessMessages() заставляет выполнить все задачи которые накопились в данный момент. Подробнее читайте в Help.

    Это также можно применить в таком примере:

     


        procedure TForm1.Button1Click(Sender: TObject);
    var i: integer;
    begin
    for i:=1 to 100000 do Application.ProcessMessages();
    end;

    если не будет ProcessMessages() то пока крутится цикл мы не сможем сдвинуть или свернуть форму.

     

    mailto:Автор:Pixel(pixel@novgorod.net http://pixelsoft.narod.ru/ )
    ї COOLer 
    Назад к оглавлению    
       
     

    Бред: TPaintBox в буфер обмена + Tray bar , как туда чего-нибудь запихать...

     
     
       

    Для начала, скажу, как ЭТО получилось(секрет программирования)... Я сел за дельфи и (!) НАБРАЛ ПЕРВОЕ, ЧТО ПРИШЛО В ГОЛОВУ(!)... :) 

       
    var
    pbRect: TRect; begin
    pbRect := Rect(0, 0, PaintBox1.Width, PaintBox1.Height);
    BitMap := TBitMap.Create;
    try
    Bitmap.Width := PaintBox1.Width;
    Bitmap.Height := PaintBox1.Height;
    BitMap.Canvas.CopyRect(pbRect, PaintBox1.Canvas, pbRect);
    ClipBoard.Assign(BitMap);
    finally
    BitMap.Free;
    end; end;

     

    Честно говоря, я не уверен, но по моему ОНО рисует в буффере...

    BONUS!!! Код программы, которая сворачивается в буффере, на форме должен быть TPopupMenu:

    unit shellUnit;

    interface

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

    const
    WM_MYICONNOTIFY = WM_USER + 123;


    ........... Тут дельфи пишет сам


    private
    { Private declarations }
    ShownOnce: Boolean;
    public
    { Public declarations }
    procedure WMICON(var msg: TMessage); message WM_MYICONNOTIFY;
    procedure WMSYSCOMMAND(var msg: TMessage);message WM_SYSCOMMAND;
    procedure RestoreMainForm;
    procedure HideMainForm;
    procedure CreateTrayIcon(n:Integer);
    procedure DeleteTrayIcon(n:Integer);
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.DFM}
    uses ComObj, activex, ShellApi, shlobj, registry;

    procedure TForm1.WMICON(var msg: TMessage);
    var P : TPoint;
    begin
    case msg.LParam of
    WM_LBUTTONDOWN:
    begin
    GetCursorPos(p);
    SetForegroundWindow(Application.MainForm.Handle);
    PopupMenu1.Popup(P.X, P.Y);
    end;
    WM_LBUTTONDBLCLK : RestoreItemClick(Self);
    end;
    end;

    procedure TForm1.WMSYSCOMMAND(var msg: TMessage);
    begin
    inherited;
    if (Msg.wParam=SC_MINIMIZE) then HideItemClick(Self);
    end;


    procedure TForm1.HideMainForm;
    begin
    Application.ShowMainForm := False;
    ShowWindow(Application.Handle, SW_HIDE);
    ShowWindow(Application.MainForm.Handle, SW_HIDE);
    end;

    procedure TForm1.RestoreMainForm;
    var i,j : Integer;
    begin
    Application.ShowMainForm := True;
    ShowWindow(Application.Handle, SW_RESTORE);
    ShowWindow(Application.MainForm.Handle, SW_RESTORE);
    if not ShownOnce then
    begin
    for I := 0 to Application.MainForm.ComponentCount -1 do
    if Application.MainForm.Components[I] is TWinControl then
    with Application.MainForm.Components[I] as TWinControl do
    if Visible then
    begin
    ShowWindow(Handle, SW_SHOWDEFAULT);
    for J := 0 to ComponentCount -1 do
    if Components[J] is TWinControl then
    ShowWindow((Components[J] as TWinControl).Handle, SW_SHOWDEFAULT);
    end;
    ShownOnce := True;
    end;

    end;

    procedure TForm1.CreateTrayIcon(n:Integer);
    var nidata : TNotifyIconData;
    begin
    with nidata do
    begin
    cbSize := SizeOf(TNotifyIconData);
    Wnd := Self.Handle;
    uID := 1;
    uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
    uCallBackMessage := WM_MYICONNOTIFY;
    hIcon := Application.Icon.Handle;
    StrPCopy(szTip,Application.Title);
    end;
    Shell_NotifyIcon(NIM_ADD, @nidata);
    end;

    procedure TForm1.DeleteTrayIcon(n:Integer);
    var nidata : TNotifyIconData;
    begin
    with nidata do
    begin
    cbSize := SizeOf(TNotifyIconData);
    Wnd := Self.Handle;
    uID := 1;
    end;
    Shell_NotifyIcon(NIM_DELETE, @nidata);
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
    ShownOnce:= False;
    CreateTrayIcon(1);
    HideItem.Enabled := False;
    end;

    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    DeleteTrayIcon(1);
    end;

    procedure TForm1.RestoreItemClick(Sender: TObject);
    begin
    RestoreMainForm;
    DeleteTrayIcon(1);
    RestoreItem.Enabled := False;
    HideItem.Enabled := True;
    end;

    procedure TForm1.HideItemClick(Sender: TObject);
    begin
    HideMainForm;
    CreateTrayIcon(1);
    HideItem.Enabled := False;
    RestoreItem.Enabled := True;
    end;

    procedure TForm1.FileExitItem1Click(Sender: TObject);
    begin
    Close;
    end;

    end.
     

     

    mailto:Автор:Pixel(pixel@novgorod.net http://pixelsoft.narod.ru/ )

     


    Zaluskiy Anton(COOLer)  и Khrapunov Kirill(Pixel)  - ведущие проекта    "Мир Delphi"



    о3он TopList RLE Banner Network

    -AdRiver-

    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться
    Убрать рекламу
    Рейтингуется SpyLog


    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться
    Убрать рекламу
    Рейтингуется SpyLog

    В избранное