krapotkin
Пользователи-
Постов
2 213 -
Зарегистрирован
-
Посещение
-
Победитель дней
210
Весь контент krapotkin
-
от души рекомендую заменить TJSONObject на XSuperObject https://github.com/onryldz/x-superobject код будет таким примерно uses XSuperObject; ... procedure TForm1.b1Click(Sender: TObject); var x:ISuperObject; arr:ISuperArray; str:string; begin X:=TSuperObject.Create(); X.S['jsonrpc'] := '2.0'; X.S['method'] := 'get_accounts'; X.I['id'] := 1; arr:=TSuperArray.Create(); arr.Add('captain'); X.A['params']:=arr; ... str:=X.AsJSON(); ... но для начала вам нужно убедиться, что для правильного запроса правильный ответ. ваша строка с образцом не совпадает только в id у вас это строка, а в приведенных примерах - число. может, в этом проблема h:=THTTPClient.Create(); // h.Accept := 'application/json' // h.AcceptCharSet := 'UTF-8'; src:=TStringStream.Create('{"jsonrpc":"2.0","method":"get_accounts","id":1,"params":["captain"]}'); res:=TStringStream.Create(); resp:=h.Post(URL,src,res); if resp.StatusCode=200 then begin ShowMessage('Ответ'+sLineBreak+res.DataString); end; FreeAndNil(h); FreeAndNil(res); FreeAndNil(src); так же может быть, нужно правильно указывать кодировку запроса-ответа и другие заголовки HTTP проверьте этот код. а потом уже делайте JSON любым способом
-
так нужно саму строку смотреть
-
Вики: Все передаваемые данные — простые объекты, сериализованные в JSON Запрос — вызов определённого метода, предоставляемого удалённой системой. Он должен содержать три обязательных свойства: method — Строка с именем вызываемого метода. params — Массив объектов, которые должны быть переданы методу, как параметры. id — Значение любого типа, которое используется для установки соответствия между запросом и ответом. вроде все понятно. в чем конкретно вопрос?
-
по поводу алгоритма закрытия формы через N секунд нужно вызвать из таймера диалог с сообщением. (лучше взять у ZuBy уже предложенную библиотеку MyDialogs. я начинал ее делать именно из-за того, что стандартные диалоги не вывозят) а на закрытие диалога повесить form.Release тогда все будет как вы хотите сначала выйдет сообщение. Потом закроется форма
-
в том, что на билдере выполнение процедуры останавливается в ShowMessage код void __fastcall TForm1::Button1Click(TObject *Sender) { Label1->Text = L"До"; ShowMessage(L"Привет"); Label1->Text = L"После"; }
-
нет в данном случае ОРД это отец русской демократии ))) я же написал код, что еще? if (keychar = ' ') then
-
блин, для цифробуквенных символов, тех, что отображаются в Edit, ответ в ord(keychar) = 32 для всех остальных - в Key а чтобы узнать нажат ли ctrl, есть shift таким образом if (keychar = ' ') and (ssCtrl in shift) then спасет ОРД.
-
-
а сейчас тут в точности написано следующее My_Procedure; Button1.Enabled := True;
-
что такое ?
-
вообще имхо плохой вариант делать анимацию через поток и sleep в данном случае я бы лучше наверное разделил анимацию на нужное кол-во ступеней и просто в таймере запускал их смысл абсолютно тот же ибо доп. поток будет работать только на Sleep, все остальное все равно происходит в главном
-
что вообще происходит? вам нужно вызвать диалог через 10 секунд?
-
непонятно. если вы хотите, чтобы картинки показывались, они должны быть в памяти. если они загружаются, то это время классический пример баланса ресурсов. либо быстро либо экономно
-
я уже писал. нужно саму мысль о том, что можно 10000+ чего то создавать и прокручивать гнать палкой себе по лбу
-
конечно от стиля в других стилях вовсе не серый в FMX панели не используются так же как в VCL. можно вместо панели использовать Rectangle если красить или Layout если прозрачный
-
все там показывается сколько ни создай окон они так друг на друге и сидят
-
не нужно ничего закрывать из модального окна. и в других ОС тоже. его нужно использовать как и везде для диалога с юзером. просто та часть, где идет проверка и реакция на ввод, сейчас живет в отдельной процедуре соответственно if Result = mrOk then Application.Terminate; procedure ExitQwery(MainSelf: TForm);
-
Уничтожение фрейма при нажатии на кнопку
krapotkin ответил Ra72 вопрос в Общая информация о TControl
или воспользоваться TThread.Queue(procedure begin ....... end); -
а почему просто в потоке не сделать?
-
https://community.embarcadero.com/blogs/entry/creating-an-overflow-menu-on-android-463
-
это же мобилка. тут все просто. берешь panel или layout и ставишь в любое место экрана
-
гугл работа TImageList FMX Delphi выдает https://community.embarcadero.com/blogs/entry/timagelistxe8ru
- 5 ответов
-
- tlistview
- timagelist
-
(и ещё 2 )
C тегом: