Последние записи
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
- Вывод на печать графического файла
- Взаимодействие через командную строку
- Перенести программу из Delphi в Lazarus
- Определить текущую ОС
- Автоматическая смена языка (раскладки клавиатуры)
- Сравнение языков на массивах. Часть 2
- wprintf как напечатать кириллицу
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
31st
Май
Пароль на приложение в Delphi
Tform2 =class(Tform)
..........
private
i: integer;
end;
procedure TForm2.OnCreate(sender: TObject);
begin
self.i=0;
end;
procedure TForm2.Button1Click(Sender: TObject);
const
pas='159357';
var
n:integer;
begin
self.i:=self.i+1;
n:=3-self.i;
if edit1.Text=pas then
begin
hide;
free;
31st
Алгоритм Брезенхема
Рисование прямой методом Брезенхема.
procedure TForm1.Button1Click(Sender: TObject);
var
x1,x2,y1,y2,dx,dy,s1,s2,x,y,o,i,v,obmen : integer;
begin
x1:=strtoint(edit1.Text);
y1:=strtoint(edit2.Text);
x2:=strtoint(edit3.Text);
y2:=strtoint(edit4.Text);
x:=x1;
y:=y1;
dx:=(abs(x2-x1));
dy:=(abs(y2-y1));
if (x2-x1)<=0 then s1:=-1 else s1:=1;
if (y2-y1)<=0 then s2:=-1 else s2:=1;
if dy>dx then
begin
v:=dx;
dx:=dy;
dy:=v;
obmen:=1;
end
else obmen:=0;
o:=2*dy-dx;
for i := 1 to dx do
begin
form1.Canvas.Pixels[x,y]:=clBlack;
while o>=0 do
begin
if obmen=1 then
x:=x+s1
else
y:=y+s2;
o:=o-2*dx;
end;
if obmen=1 then y:=y+s2
else x:=x+x1;
o:=o+2*dy;
end;
//form1.refresh;
//self.Repaint;
end;
29th
Май
Что значат символы @ и ^ перед переменными в delphi и паскаль?
Эти символы в Дельфи и Паскале используются для работы с указателями (адресами памяти, где находится информация).
28th
Май
Как сделать стартовым окном Форму 2?
Sanprof:
установить “форму 2″ по умолчанию так (Project -> Options -> Вкладка Forms -> В комбобоксе с надписью Main Form выбираем нужную форму по умолчанию)
23rd
Май
Какой процедурой узнать что форму взяли и начали двигать?
Terran:
Вот пример. Остался ещё с моей давней проги. Только Вам надо его подкорректировать как Вам надо.
Private
{ Private declarations }
Procedure OnMove(Var Msg: TWMMove);
Message WM_MOVE;
…
Procedure TForm1.OnMove(Var Msg: TWMMove);
Var
RWorkArea: TRect;
Begin
SystemParametersInfo(SPI_GETWORKAREA, 0, @RWorkArea, 0);
If Form1.Showing Then
Begin
If Form2.Showing Then
Begin
If (Form2.Top+Form2.Height>RWorkArea.Bottom) Then
Form2.Left:=Form1.Left;
Form2.Top:=Form1.Top+Form1.Height;
End;
End;
End;
22nd
Май
Как проверить есть ли в RichEdit текст?
Procedure TFExternalRV.Button2Click(Sender: TObject);
Begin
RichViewEdit1.SelectAll;
If RichViewEdit1.GetSelText = ” Then
ShowMessage(’Текста нет’);
RichViewEdit1.Deselect;
End;
20th
Май
Как узнать нажата ли CTRL?
eoln:
Просто вставить проверку if (GetKeyState(VK_CONTROL) AND 128) = 128 then нажата
20th
Выгрузка вычисляемых полей Table в Excel
procedure TForm1.InExel1Click(Sender: TObject);
Var
a1:string;
XLApp,Sheet,Colum:Variant;
n2:integer;
begin
XLApp:=CreateOleobject('Excel.Application');
XLApp.Visible:=true;
XLApp.workbooks.Add(-4167);
XLApp.Workbooks[1].WorkSheets[1].Name:='Товар';
Colum:=XLApp.Workbooks[1].WorkSheets['Товар'].Columns;
N2:=1;
Colum.Columns[1].ColumnWidth:=5;
Colum.Columns[2].ColumnWidth:=30;
Colum.Columns[3].ColumnWidth:=15;
Colum.Columns[4].ColumnWidth:=20;
Colum:=XLApp.Workbooks[1].WorkSheets['Товар'].Rows;
Colum.Rows[2].Font.Bold:=true;
Colum.Rows[1].Font.Bold:=true;
Colum.Rows[1].Font.Color:=clBlue;
Colum.Rows[1].Font.Size:=9;
Sheet:=XLApp.Workbooks[1].WorkSheets['Товар'];
Sheet.Cells[n2,1]:=' ';
Sheet.Cells[n2,2]:=' ';
Sheet.Cells[n2,3]:=' ';
Sheet.Cells[n2,4]:=' ';
Table1.First; //ВЫВОД В ТАБЛИЦУ
end;
20th
Макрос на VBA для переворота текста
Private Sub Document_New()
Dim a As Single
a = InputBox(”Введите текст”, “Enter”)
Selection.TypeText Text:=”Вы ввели текст” + Str(a) + Chr(13) + Chr(10)
Selection.TypeText Text:=”Перевернутый вариант” + StrReverse(a)
End Sub
17th
Май
Обращение к свойству компонента не зная его имени
Примерно такая ситуация – есть n компонентов TImage.Статических.Хочу обратиться к свойству tag рандомно выбранного компонента.Возможно такое?(можно хранить их в массиве конечно и создавать динамически но мне желательно без этого)…
...
var
RaspMatF: TRaspMatF;
cbet : array of integer;
.....
for i := 0 to RaspMatF.ComponentCount - 1 do // перебираем на форме все компоненты
begin
if (RaspMatF.Components is TCheckBox) and TCheckBox(RaspMatF.Components).Checked then // и если выбранный компонент является чекбоксом, и он выбра(стоит галочка)
begin
SetLength(cbet, (length(cbet)+1)); // то мы увеличиваем размер массива на 1
cbet[High(cbet)] := TCheckBox(RaspMatF.Components).Tag; // добавляем значение в массив
end;
end;
таким образом я записывал в массив значения Tag выбранных компонентов CheckBox
Облако меток
css реестр ассемблер timer SaveToFile ShellExecute программы массив советы word MySQL SQL ListView pos random компоненты дата LoadFromFile form база данных сеть html php RichEdit indy строки Win Api tstringlist Image мысли макросы Edit ListBox office C/C++ memo графика StringGrid canvas поиск файл Pascal форма Файлы интернет Microsoft Office Excel excel winapi журнал ПРОграммист DelphiКупить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)