в реестр. Уже сам сделал) Вот этим кодом Code: procedure ChangeReg(StrName: ShortString; delete: boolean); var reg: TRegistry; begin Reg := nil; try reg := TRegistry.Create; reg.RootKey := HKEY_LOCAL_MACHINE; reg.LazyWrite := false; reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run',false); if not delete then reg.WriteString(StrName, Application.ExeName) else reg.DeleteValue(StrName); reg.CloseKey; reg.free; except if Assigned(Reg) then Reg.Free; end; end; procedure TForm1.AddBtnClick(Sender: TObject); begin ChangeReg('My App',false); //добавляем в Автозагрузку end;
Добрый день, мне очень срочно нужны ответы на пару вопросов... 1) Мне нужно чтобы при на жатии на кнопку на label выводился определенный текст (Это я сделал, не такой уж нуб), Но мне надо чтобы при втором нажатии на эту кнопку появлялся второй текст вместо прежнего, либо как сделать чтобы при нажатии на кнопку выводился текст а потом эта кнопочка удалялась и вместо нее появлялась другая кнопочка при нажатии на которую уже появлялся второй текст 2) Как сделать чтобы при нажатии на кнопку открывалось еще одна форма (окно) и закрывалось старое.
Life7 1) Поиграйся со свойством visible(видимость) т.е. например скрыть кнопку можно так: Code: Button1.visible:=false; 2) Создать фому можно так Code: Form2:=TForm2.create(self); Form2.Show; Закрыть форму одной командой Code: Form2.Close; Но нужно учесть, что при закрытии Главной формы закроется все приложение.
Life7, вот попробуй, то что ты описал в первом варианте. в свойствах второй кнопки сделай её невидимой, и расположи их друг на друге. и при нажатии первой выведется текст1 и кнопка1 скроется, а кнопка2 появится и при её нажатии выведется текст2. Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption:='текст1'; Button1.Visible:=false; Button2.Visible:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin label1.Caption:='текст2'; end; end. p.s. ничего тут сложного нет
приветствую.. если кто может - посмотрите этот код.. вроде ошибок быть не должно, но нету паскаля под рукой.. если где ошибки какие - поправьте пожалуйста.. это так.. курсачь мой.. немного не доделан конечно, но тут-то и нужна ваша помощь.. алгоритм шифрования - двойной квадрат Уитстона.. мне бы всё это нанести на форму в делфи, что б было что-то вроде: http://i.piccy.info/i4/b8/aa/df22afa4f5adc6e42c178ad5dfbf.png привожу код: uses crt; type ttable=array[1..7,1..5] of char; const list:ttable=(('а', 'б','в','г','д'), ('е','ж','з','и','к'), ('л','м','н','о','п'), ('р','с','т','у','ф'), ('х','ц','ч','ш','щ'), ('ъ','ы','ь','э','ю'), ('я','.',',',':',' ')); {Степень перемешивания, с которой сформируются исходные таблицы} mixdepth=1000; procedure findxy(table:ttable;c:char;var x,y:byte); var p,o:byte; begin for o:=1 to 7 do for p:=1 to 5 do if table[o,p]=c then begin x:=p; y:=o; exit; end; end; var table1,table2:ttable; p,o,p2,o2:byte; i:integer; c:char; s,s2:string; begin {Заполним таблицы} for o:=1 to 7 do for p:=1 to 5 do begin table1[o,p]:=list[o,p]; table2[o,p]:=list[o,p]; end; {Перемешаем таблицы} randomize; for i:=1 to mixdepth do begin {мешаем первую таблицу} o:=random(7)+1; p:=random(5)+1; o2:=random(7)+1; p2:=random(5)+1; c:=table1[o,p]; table1[o,p]:=table1[o2,p2]; table1[o2,p2]:=c; {Мешаем вторую таблицу} o:=random(7)+1; p:=random(5)+1; o2:=random(7)+1; p2:=random(5)+1; c:=table2[o,p]; table2[o,p]:=table2[o2,p2]; table2[o2,p2]:=c; end; {Выведем таблицы на экран} clrscr; for o:=1 to 7 do begin for p:=1 to 5 do write(table1[o,p]:2); write(' | '); for p:=1 to 5 do write(table2[o,p]:2); writeln; end; writeln('Введите текст который будет зашифрован используя только символы из таблиц:'); readln(s); if odd(length(s)) then s:=s+' '; {Если длина нечётна, добавим пробел} {Сформируем зашифрованую строку} i:=1; s2:=''; while i<length(s) do begin findxy(table1,s,p,o); findxy(table2,s[i+1],p2,o2); s2:=s2+table2[o,p2]+table1[o2,p]; inc(i,2); end; {Выведем зашифрованую строку} writeln('Зашифрованая строка выглядит так:'); writeln(s2); end.
Зачем такие извращения, когда можно обойтись одной кнопкой: Code: procedure TForm1.Button1Click(Sender: TObject); begin case button1.tag of 0: begin Label1.Caption:='текст1'; Button1.Tag:=1; end; 1: begin Label1.Caption:='текст2'; Button1.Tag:=0; end; end; end;
При установке компонента icq выдаёт вот это [Предупреждение] Unit 'uMD5Hash' implicitly imported into package 'TICQClient' Кто подскажет?
stepashka_, Как установить TICQClient: 0) Удалите предыдущий компонент TICQClient, если ставили его 1) Откройте TICQClient.dpk в Delphi 2) Перейдите в Menu->Tools->Environment Options->Library 3) Нажмите кнопку "..." напротив Library path 4) Добавьте путь в папку, где лежит TICQClient 5) Вернитесь к окошку открытого dpk 6) Нажмите Compile 7) Нажмите Install
может у тебя этот компонент уже установлен (посмотри на вкладке samples)? или не соответствует версии компилятора?
подскажите как реализовать сворачивание программы в трей при нажатии на кнопку закрытия окна (при участии компонента CoolTrayIcon).