[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    http://forum.antichat.ru/showthread.php?t=160471

    вот тут обсуждали подобную проблему, может поможет
     
  2. InfectedM

    InfectedM Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    155
    Likes Received:
    12
    Reputations:
    0
    Code:
     RegExp.Expression := 'e-mail:(.+?)\s+\n';
    if RegExp.Exec(memo1.text) then mail:=RegExp.Match[1];

    Допустим я спарсил свою почту: support[at]main[at]qwe[at]abc[dot]mail.ru
    как с помощью TRegExpr заменить все [at] на точки ,а [dot] на собаку
    ps количество точек не известно
    результат должен быть : [email protected]
    Подскажите плз как это реализовать через RegExp,а то ен могу разобраться
     
  3. heretic1990

    heretic1990 Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    EndLeSSDre@M, не помогло((
    вопрос ещё актуален!
     
  4. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    хм.... ну если есть этот компонент то все просто:

    CoolTrayIcon.HideMainForm;

    это в кнопку добавь!
     
  5. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,022
    Likes Received:
    423
    Reputations:
    234
    Скачал заного компонент, всё ОК :cool:
     
  6. heretic1990

    heretic1990 Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    это то само собой, а мне надо чтобы при нажатии кнопки закрыть, которая рядом с кнопками свернуть и развернуть.
    пробовал так:
    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
    Action := caNone;
    Application.Minimize;
    end;

    но проект вообще не закрывается, даже с помощью кнопки с действием close;
     
  7. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    сделай уж так тогда

    а по идее, на сколько я щас соображаю... то если это будет в ивенти при закрытии формы, то ее никак не закрыть... или я просто чего то не знаю(((

    в твоем случае можно просто кнопку закрыть сделать не активной...
     
    #5607 EndLeSSDre@M, 28 Mar 2010
    Last edited: 28 Mar 2010
  8. heretic1990

    heretic1990 Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    EndLeSSDre@M, эта прога будит закрываться из popupmenu которое будит вызываться из трея, а не по средствам закрытия формы, кликая на кнопку закрыть она будит просто сворачиваться в трей. сворачивания то я добился с помощью Action := caNone; Application.Minimize; . но при этом программу вообще не закрыть(((
     
  9. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    пробуй этот код! должно помочь

    PHP:
    procedure TForm1.Button1Click(SenderTObject);
    begin
      ccc
    :=1;
      
    Close;
    end;
    procedure TForm1.FormCloseQuery(SenderTObject; var CanCloseBoolean);
    begin
      
    if ccc=1 then
        CanClose
    :=true
      
    else
      
    begin
        CanClose
    :=false;
        
    Application.Minimize;
      
    end;
    end;
    end.
     
    #5609 EndLeSSDre@M, 28 Mar 2010
    Last edited: 28 Mar 2010
  10. Life7

    Life7 Banned

    Joined:
    14 Jun 2009
    Messages:
    150
    Likes Received:
    54
    Reputations:
    0
    помогите найти пожалуйста самый большой учебник MidletPascal буду сидеть учить
     
  11. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    в гугле забанили что ли??? ну сиди ты скачивай и проверяй где страниц больше... если все время искать что то готовенькое, то ничего в этой жизни не достигнешь!
     
    1 person likes this.
  12. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Как вариант:
    PostMessage(FindWindow(nil, 'Form1'), wm_quit, 0, 0);
     
    1 person likes this.
  13. Life7

    Life7 Banned

    Joined:
    14 Jun 2009
    Messages:
    150
    Likes Received:
    54
    Reputations:
    0
    ... интересненькая задачка))) я тут набросал по быстрому... щас еще подумаю и подредактирую.... буду рад если кто поможет доделать
    да и исправьте ошибки... а то я не силен в этом)))


     
  14. TrueBit

    TrueBit Member

    Joined:
    21 Nov 2009
    Messages:
    71
    Likes Received:
    19
    Reputations:
    4
    Начал работать с winapi на delphi и возник вопрос:
    Как сделать так, что бы окно, созданное CreateWindowEx, было по центру экрана?
     
  15. s0l_ir0n

    s0l_ir0n Active Member

    Joined:
    14 Mar 2009
    Messages:
    399
    Likes Received:
    144
    Reputations:
    18
    PHP:
    function CenterWindow(Wnd:HWND):boolean;
    var
     
    R:TRect;
     
    X,Y,W,H:integer;
    begin  
      GetWindowRect
    (WndR);
      
    W:=GetSystemMetrics(SM_CXSCREEN);
      
    H:=GetSystemMetrics(SM_CYSCREEN);
      
    := (W div 2) - ((R.Right R.Leftdiv 2);
      
    := (H div 2) - ((R.Bottom R.Topdiv 2);
      
    result:=SetWindowPos(Wnd0XY00SWP_NOSIZE or SWP_NOZORDER or SWP_NOACTIVATE)
    end;
     
    1 person likes this.
  16. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    Life7 я не понял, это че такое??? тупое набивание постов??? на сколько я помню это был мой пост, и слова точно такие же!
     
  17. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
    procedure TForm1.Button1Click(SenderTObject);
    var
      
    WSAData1WSAData;
      
    my_sockTSocket;
      
    dest_addrsockaddr_in;
      
    bufstring;
      
    res: Array [0..1024of Char;
      
    resleninteger;
    begin
    WSAStartup
    ($101,WSAData1);
    my_sock := socket(AF_INETSOCK_STREAM0);
    dest_addr.sin_family := AF_INET;
    dest_addr.sin_port:=htons(80);
    dest_addr.sin_addr.S_addr := inet_addr('192.0.32.10');
    connect(my_sockdest_addrSizeOf(dest_addr));
    buf := 'GET / HTTP/1.1'+#10#13+'Host: example.com'+#10#13;
    send(my_sockbufsizeof(buf), 0);

    recv(my_sockres1280); //здесь зависает
    ShowMessage(res);
    end;
    Почему программа на строке
    Code:
    recv(my_sock, res, 128, 0);
    зависает? Что я делаю неправильно в этом WinSock'e?
     
  18. wolmer

    wolmer Member

    Joined:
    12 May 2009
    Messages:
    438
    Likes Received:
    97
    Reputations:
    9
    в твоем случае надо в отдельном потоке работать с winsock (CreateThread)

    slesh, в точку :) (или же можно проделать copymemory (в массив вида char))
     
    #5618 wolmer, 29 Mar 2010
    Last edited: 29 Mar 2010
  19. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    buf := 'GET / HTTP/1.1'+#10#13+'Host: example.com'+#10#13;
    send(my_sock, buf, sizeof(buf), 0);

    заменяй на
    buf := 'GET / HTTP/1.1'+#13#10+'Host: example.com'+#13#10#13#10;
    send(my_sock, buf[1], length(buf), 0);
     
  20. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Спасибо. Теперь в этом проблема:
    Code:
    r:=1;
    
    while(r > 0) do
    begin
    r := recv(my_sock, res, 128, 0);
    end;
    Опять зацикливается...

    wolmer, работать в отдельном потоке вовсе не обязательно...
     
    1 person likes this.
Thread Status:
Not open for further replies.