Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > Trucos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Los mejores trucos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-01-2023
dani36652 dani36652 is offline
Miembro
 
Registrado: abr 2019
Posts: 55
Poder: 6
dani36652 Va camino a la fama
Lightbulb (ANDROID) Botones de Dialog siempre en inglés -Solucion alternativa con JAlertDialog

Hola a todos los colegas del foro, el día de hoy les traigo un aporte que si bien no es de mucha relevancia y a nivel funcionalidad no afecta en nada tener siempre en inglés los botones del message dialog que proporciona Delphi;
para algunos otros colegas puede ser interesante optar por el cuadro de dialogo nativo de Android y así mismo tener en el idioma correspondiente tanto los titulos, el mensaje y el texto de los botones.
Para ello se hizo uso de JAlertDialog nativo, les dejo el código por aquí:

Código Delphi [-]
unit UMain;

interface

uses
  {$IFDEF ANDROID}
  Androidapi.JNI.Webkit, FMX.Dialogs.Android,
  Androidapi.JNI.Print,
  Androidapi.jni,fmx.helpers.android, Androidapi.Jni.app,
  Androidapi.Jni.GraphicsContentViewText, Androidapi.JniBridge,
  Androidapi.JNI.Os, Androidapi.Jni.Telephony,
  Androidapi.JNI.JavaTypes,Androidapi.Helpers,
  Androidapi.JNI.Widget,System.Permissions,
  Androidapi.Jni.Provider,Androidapi.Jni.Net,
  fmx.TextLayout,AndroidAPI.JNI.Support,
 {$ENDIF}
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FMX.Controls.Presentation, FMX.StdCtrls, FMX.DialogService;

type
  TOnClickListener = class(TJavaLocal, JDialogInterface_OnClickListener)
  public
    constructor Create;
    procedure onClick(dialog: JDialogInterface; which: Integer); cdecl;
  end;

type
  TfrmMain = class(TForm)
    btnAlert_Dialog: TButton;
    procedure btnAlert_DialogClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmMain: TfrmMain;

implementation

{$R *.fmx}

procedure TfrmMain.btnAlert_DialogClick(Sender: TObject);
var Dlg: JAlertDialog_Builder;
OnClickListener: TOnClickListener;
begin
  OnClickListener:= TOnClickListener.Create;
  Dlg:= TJAlertDialog_Builder.JavaClass.init(TAndroidHelper.Context);
  Dlg.setTitle(StrToJCharSequence('Advertencia'));
  Dlg.setMessage(StrToJCharSequence('¿Salir de la aplicación?'));
  Dlg.setPositiveButton(StrToJCharSequence('SI'), OnClickListener);
  Dlg.setNegativeButton(StrToJCharSequence('NO'), nil);
  Dlg.show;
end;

{ TMyOnClickListener }

constructor TOnClickListener.Create;
begin
 inherited Create;
end;

procedure TOnClickListener.onClick(dialog: JDialogInterface; which: Integer);
begin
  //Escribir la lógica aquí
  Application.Terminate;
end;

end.

Saludos cordiales.
Responder Con Cita
  #2  
Antiguo 18-01-2023
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola a todos,

¡Gracias por la aportación, Dani!

P.S. No sé si un hilo como este debería ir aquí, en el apartado de trucos o en ambos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 18-01-2023
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Gracias por la aportación.
Yo creo que es mejor moverlo a trucos y en todo caso modificar el título para indicar Android.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 19-01-2023
dani36652 dani36652 is offline
Miembro
 
Registrado: abr 2019
Posts: 55
Poder: 6
dani36652 Va camino a la fama
Gracias a ambos.
Para la siguiente ocasión, aportes de este tipo los pondré en el apartado de trucos
Responder Con Cita
  #5  
Antiguo 20-01-2023
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Ya la he modvido a la sección de trucos.
Gracias.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Uso de JAlertDialog (Alerta de Diálogo Nativa de Android) dani36652 Desarrollo en Delphi para Android 0 26-08-2020 01:46:45
DEPLOY ANDROID 64 BITS SOLUCIÓN A [PAClient Error] Error: E6408 Y SIMILARES dani36652 Desarrollo en Delphi para Android 5 31-01-2020 22:11:37
Message Dialog jafera OOP 3 03-03-2010 15:08:12
Solución Planteada para solucion de conexion con Interbase ingabraham Varios 19 30-01-2009 14:00:04
dialog ilcapo C++ Builder 1 13-02-2006 08:27:04


La franja horaria es GMT +2. Ahora son las 16:31:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi