В общем нужна прога для изменения свойства caption объекта типа Tlabel (короче изменить надпись на форме) другой, уже готовой программы (exe-шника, это тест). Допустим прога выводит 50 а я хочу заместо этого написать 100. Сидит такая прога в трее, потом я беру и удерживая, скажем ctrl, навожу мышку на Tlabel формы этого теста и 50 чудодейственным образом меняется на 100. Может народные умельцы подадут идею создания такой проги. А может че готовенькое есть? Я сам пробовал писать, но не могу обратиться к лабелю через hwnd. Зато у остального caption запросто меняется - и у кнопки, и у формы, и всякой шушеры.
» Вопросы по Delphi
boss artem
еще бы, у лэйбла нет хэндла это просто надпись на канве
еще бы, у лэйбла нет хэндла это просто надпись на канве
И как решить проблему?
boss artem
Цитата:
В данном случае никак, в крайнем случае можно при помощи хука перехватывать сообщение WM_PAINT и рисовать свою цифру, но нет гарантии, что будет работать. Другой вариант, может сработает, это покорявить ресурсы чтобы лэйдла ответа была скрыта, а самому на форме создать свой контрол с нужной цифрой, или его просто создать без сокрытия лэйблы прям поверх нее, ИМХО второй способ реальней.
Цитата:
И как решить проблему?
В данном случае никак, в крайнем случае можно при помощи хука перехватывать сообщение WM_PAINT и рисовать свою цифру, но нет гарантии, что будет работать. Другой вариант, может сработает, это покорявить ресурсы чтобы лэйдла ответа была скрыта, а самому на форме создать свой контрол с нужной цифрой, или его просто создать без сокрытия лэйблы прям поверх нее, ИМХО второй способ реальней.
Люди помогите найти Update для Delphi 7.
Так кто поможет мне с моим вопросом?
Ешо раз описываю проблему:
Как сделать рефреш в гриде, когда компоненты, с которыми связана эта таблица находятся не на форме, где находится грид, а на датамодуле.
Вариант что прописать в иплементейшн датамодуль и так делать рефреш не подходит(этот вариант я и сам знаю). Вся загвоздка как раз в разном розположении грида и связных компонентов, когда они вместе - все работает скпер, а вот когда порознь - не хочет и все. :'-(
А сделать это нужно, если никто не поможет, буду вручную перетаскивать все компоненты на форму, а это мороки - не полдня, так как их там - куча и все связаны реляционными связями.
Ешо раз описываю проблему:
Как сделать рефреш в гриде, когда компоненты, с которыми связана эта таблица находятся не на форме, где находится грид, а на датамодуле.
Вариант что прописать в иплементейшн датамодуль и так делать рефреш не подходит(этот вариант я и сам знаю). Вся загвоздка как раз в разном розположении грида и связных компонентов, когда они вместе - все работает скпер, а вот когда порознь - не хочет и все. :'-(
А сделать это нужно, если никто не поможет, буду вручную перетаскивать все компоненты на форму, а это мороки - не полдня, так как их там - куча и все связаны реляционными связями.
Kr_Alex
Посмотри здесь:
1) _http://se-ed.net/thaidelphicc/xml/updatepack/
2) _http://www.better-office.com/Deutsch/Produkte/Preislisten/Preisliste__minus__Delphi_7.htm
3) _http://blackman.wp-club.net/cncat/?c=0&o=2&start=10
4) _http://hardware.desk.ru/ht_c-285540608_.html
5) _http://www.stolica.ru/abc/query/softspec.htm
Посмотри здесь:
1) _http://se-ed.net/thaidelphicc/xml/updatepack/
2) _http://www.better-office.com/Deutsch/Produkte/Preislisten/Preisliste__minus__Delphi_7.htm
3) _http://blackman.wp-club.net/cncat/?c=0&o=2&start=10
4) _http://hardware.desk.ru/ht_c-285540608_.html
5) _http://www.stolica.ru/abc/query/softspec.htm
Paha_W
Спасибо
Спасибо
Solnake
Очевидно что они у тебя не связаны нормальным образом. При перетаскивании через клипбоард в свойствах компонента запоминаются ссылки на имя компонента а не на "расположение.имя". Попробуй открыть одновременно форму и датамодуль и попробуй поменять какое нибудь свойство ссылающееся на источник данных. Вполне вероятно ты увидишь нечто "datamodule1.datasource1". Похоже тебе придётся либо разбираться со ссылками (что идентично пониманию того что происходит). Либо перетаскивай, тогда это идентично методу тыка. "Тыком можно всё дотыкать"
Очевидно что они у тебя не связаны нормальным образом. При перетаскивании через клипбоард в свойствах компонента запоминаются ссылки на имя компонента а не на "расположение.имя". Попробуй открыть одновременно форму и датамодуль и попробуй поменять какое нибудь свойство ссылающееся на источник данных. Вполне вероятно ты увидишь нечто "datamodule1.datasource1". Похоже тебе придётся либо разбираться со ссылками (что идентично пониманию того что происходит). Либо перетаскивай, тогда это идентично методу тыка. "Тыком можно всё дотыкать"
Pinocchio
ладно, я уже просто перекину все компоненты на одну форму.
ладно, я уже просто перекину все компоненты на одну форму.
Хочу написать программу, которая будет висеть в памяти и всякую фигню творить. Засунуть в память её я думаю зациклив её, а вот как сделать чтобы при нажатиии магичесой комбинации (напр ALT+CTRL+ESC) прерывать её или хотябы высвечивать форму продолжить/прервать или типа того? Как осуществить?
Прошу прощение ....Помогите пожайлуйста достать 2 файла из 7-ки 1.StrUtils.dcu и 2.StrUtils.pas, а то у меня полетели эти файлы и теперь вся работа стоит...
Если можно на malaysk гав mail.ru Заранее благодарю....
Если можно на malaysk гав mail.ru Заранее благодарю....
YurikGL
Цитата:
Эээээ вопрос про откртытие bmp файлов в Паскале в другом месте рассматривается Тут вроде Дельфи.
Цитата:
А что, яндекс отменили что-ли?
Эээээ вопрос про откртытие bmp файлов в Паскале в другом месте рассматривается Тут вроде Дельфи.
как в делфи изменить содержимое ячейки памяти конкретной запущенной программы? Адрес ячейки известен, нужно поменять значение переменной, которая в нее записана, c 50, скажем, на 90. Думаю надо встроить асм, но совершенно в нем не шарю . help, pls.
boss artem
асм тут не очень нужно, так как ты знаеш ячейки памяти.
Тебе просто нужно открыть прогу, в которой ты хоч менять значения в памяти, в режиме отладки. Тоесть написать маленький отладчик.
читать здесь http://www.delphiworld.narod.ru/base/break_games.html
правда там на англ, но в конце есть рабочий пример (именно он и нужен), который показывает, как переписать ячейку
Есть вариант номер два - написать драйвер. Правда лучше этого не делать...
асм тут не очень нужно, так как ты знаеш ячейки памяти.
Тебе просто нужно открыть прогу, в которой ты хоч менять значения в памяти, в режиме отладки. Тоесть написать маленький отладчик.
читать здесь http://www.delphiworld.narod.ru/base/break_games.html
правда там на англ, но в конце есть рабочий пример (именно он и нужен), который показывает, как переписать ячейку
Есть вариант номер два - написать драйвер. Правда лучше этого не делать...
Solnake
Цитата:
Передавай в датамодуль при создании указатель на связанный грид. И если указатель не равен нил, делай рефреш на нужных событиях в датамодуле.
Цитата:
Так кто поможет мне с моим вопросом?
Передавай в датамодуль при создании указатель на связанный грид. И если указатель не равен нил, делай рефреш на нужных событиях в датамодуле.
RomanAlex
Пасиба за совет, но я уже розобрался, вернее не совсем так, но работает. Ешо раз спасиба
Пасиба за совет, но я уже розобрался, вернее не совсем так, но работает. Ешо раз спасиба
Zaporozhets
Цитата:
Сделать RegisterHotKey для данной компинации и обрабатывать WM_HOTKEY
Цитата:
Засунуть в память её я думаю зациклив её, а вот как сделать чтобы при нажатиии магичесой комбинации (напр ALT+CTRL+ESC) прерывать её или хотябы высвечивать форму продолжить/прервать или типа того? Как осуществить?
Сделать RegisterHotKey для данной компинации и обрабатывать WM_HOTKEY
Не знаю может и не в тему... Если так, то укажите куда обратиться???
В Excel-е есть "Финансовые функции" типа...
ДНЕЙКУПОН Возвращает число дней в периоде купона, который содержит дату соглашения
ДНЕЙКУПОНДО Возвращает количество дней между началом периода купона и датой соглашения
ДНЕЙКУПОНПОСЛЕ Возвращает число дней от даты соглашения до срока следующего купона
ДОБ Возвращает амортизацию имущества на заданный период, используя метод постоянного учета амортизации
ДОХОД Возвращает доход от ценных бумаг, по которым производятся периодические выплаты процентов
ДОХОДКЧЕК Возвращает доход по казначейскому чеку
ДОХОДПЕРВНЕРЕГ Возвращает доход по ценным бумагам с нерегулярным первым периодом
ДОХОДПОГАШ Возвращает годовой доход от ценных бумаг, процент по которым выплачивается в срок погашения
ДОХОДПОСЛНЕРЕГ Возвращает доход по ценным бумагам с нерегулярным последним периодом
ДОХОДСКИДКА Возвращает годовой доход по ценным бумагам, на которые сделана
ВОПРОС: МОЖЕТ у кого - нибудь есть! Или подскажите где найти аналоги под ДЕЛЬФИ этих функций
В Excel-е есть "Финансовые функции" типа...
ДНЕЙКУПОН Возвращает число дней в периоде купона, который содержит дату соглашения
ДНЕЙКУПОНДО Возвращает количество дней между началом периода купона и датой соглашения
ДНЕЙКУПОНПОСЛЕ Возвращает число дней от даты соглашения до срока следующего купона
ДОБ Возвращает амортизацию имущества на заданный период, используя метод постоянного учета амортизации
ДОХОД Возвращает доход от ценных бумаг, по которым производятся периодические выплаты процентов
ДОХОДКЧЕК Возвращает доход по казначейскому чеку
ДОХОДПЕРВНЕРЕГ Возвращает доход по ценным бумагам с нерегулярным первым периодом
ДОХОДПОГАШ Возвращает годовой доход от ценных бумаг, процент по которым выплачивается в срок погашения
ДОХОДПОСЛНЕРЕГ Возвращает доход по ценным бумагам с нерегулярным последним периодом
ДОХОДСКИДКА Возвращает годовой доход по ценным бумагам, на которые сделана
ВОПРОС: МОЖЕТ у кого - нибудь есть! Или подскажите где найти аналоги под ДЕЛЬФИ этих функций
Shadi
Попробуй к финансистам обратиться. Наверняка в каком-то учебнике/справочнике они описаны.
Попробуй к финансистам обратиться. Наверняка в каком-то учебнике/справочнике они описаны.
vserd
Ответ типа как у чукчи: "Однака нужно за трактор в деревню идти"!!!
Финансист сидит рядом и есть алгоритмы, но это так муторно. Может уже есть велосипед, так зачем же его изобретать..
Ответ типа как у чукчи: "Однака нужно за трактор в деревню идти"!!!
Финансист сидит рядом и есть алгоритмы, но это так муторно. Может уже есть велосипед, так зачем же его изобретать..
Shadi
Цитата:
Если я правильно понял, это макросы. Вызов макроса из Дельфи
Цитата:
Подробнее как обратится к ворду через OLE смотри в топиках, уже было. Обратись в Excel VBA там вроде писали подробный код работы с екселем из дельфи.
Цитата:
ВОПРОС: МОЖЕТ у кого - нибудь есть! Или подскажите где найти аналоги под ДЕЛЬФИ этих функций
Если я правильно понял, это макросы. Вызов макроса из Дельфи
Цитата:
var XD: variant;
...
XD.Run("Имя_Макроса");
Подробнее как обратится к ворду через OLE смотри в топиках, уже было. Обратись в Excel VBA там вроде писали подробный код работы с екселем из дельфи.
ShIvADeSt
Первым делом пробовал именно этот вариант!
код..
procedure TForm1.bntDays360Click(Sender: TObject);
var
ExcelApp : Variant;
str : string;
tt1 : Double;
begin
try
// Создание Excel
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Visible := True;
ExcelApp.Workbooks.Add;
//это работает
ExcelApp.activesheet.cells[2,2].value := '=DAYS360("'+ edt1.Text + '","'+ edt2.Text +'",4)';
// ЭТО НЕ РАБОТАЕТ
ExcelApp.activesheet.cells[1,1].value :='=ДАТАКУПОНДО("'+ edt1.Text + '","'+ edt2.Text +'",2,4)';
str := FloatToStr(ExcelApp.activesheet.cells[2,2].value);
tt1 := ExcelApp.activesheet.cells[1,1].value;
memo.Lines.Add(str);
memo.Lines.Add(FloatToStr(tt1));
finally // wrap up
ExcelApp.displayalerts := False;
ExcelApp.Quit;
ExcelApp := UnAssigned;
end; // try/finally
ПОЧЕМУ ТО ЧЕРЕЗ "ОЛЮ" Дельфи не видит пакет Функций анализа
Первым делом пробовал именно этот вариант!
код..
procedure TForm1.bntDays360Click(Sender: TObject);
var
ExcelApp : Variant;
str : string;
tt1 : Double;
begin
try
// Создание Excel
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Visible := True;
ExcelApp.Workbooks.Add;
//это работает
ExcelApp.activesheet.cells[2,2].value := '=DAYS360("'+ edt1.Text + '","'+ edt2.Text +'",4)';
// ЭТО НЕ РАБОТАЕТ
ExcelApp.activesheet.cells[1,1].value :='=ДАТАКУПОНДО("'+ edt1.Text + '","'+ edt2.Text +'",2,4)';
str := FloatToStr(ExcelApp.activesheet.cells[2,2].value);
tt1 := ExcelApp.activesheet.cells[1,1].value;
memo.Lines.Add(str);
memo.Lines.Add(FloatToStr(tt1));
finally // wrap up
ExcelApp.displayalerts := False;
ExcelApp.Quit;
ExcelApp := UnAssigned;
end; // try/finally
ПОЧЕМУ ТО ЧЕРЕЗ "ОЛЮ" Дельфи не видит пакет Функций анализа
Цитата:
ExcelApp.activesheet.cells[2,2].value := '=DAYS360("'+ edt1.Text + '","'+ edt2.Text +'",4)';
а почему value? Вроде должно быть formula если я правильно помню эти вещи.
ShIvADeSt
Без разницы! Что value, что formula!
Excel открытый через OLE отрубает надстройку - пакет анализа, где храняться эти функции.
Вот после этого верь Билу....
Без разницы! Что value, что formula!
Excel открытый через OLE отрубает надстройку - пакет анализа, где храняться эти функции.
Вот после этого верь Билу....
Привет всем !
Подскажите как это
DrawTextEx(Label5.Canvas.Handle ,PChar(dir),length(dir),r,DT_PATH_ELLIPSIS,nil);
превратить в текст, а то после сворачивания и разворачмвания проги - Label.Canvas очищается.
Возможны ещё какие нибудь варианты?
Подскажите как это
DrawTextEx(Label5.Canvas.Handle ,PChar(dir),length(dir),r,DT_PATH_ELLIPSIS,nil);
превратить в текст, а то после сворачивания и разворачмвания проги - Label.Canvas очищается.
Возможны ещё какие нибудь варианты?
h0mer
ты его в FormPaint засунь - будет нормально
ты его в FormPaint засунь - будет нормально
Подскажите пожалуйста, как правильно отправить комманду CBN_SELCHANGE
Ни у кого нету исходников карточной игры "Солитёр"?
Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
Предыдущая тема: Вероятность одинакового CRC32
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.